in src/Amazon.SecretsManager.Extensions.Caching/SecretsManagerCache.cs [124:138]
public SecretCacheItem GetCachedSecret(string secretId)
{
SecretCacheItem secret = cache.Get<SecretCacheItem>(secretId);
if (secret == null)
{
secret = cache.Set<SecretCacheItem>(secretId, new SecretCacheItem(secretId, secretsManager, config), cacheItemPolicy);
if (cache.Count > config.MaxCacheSize)
{
// Trim cache size to MaxCacheSize, evicting entries using LRU.
cache.Compact((double)(cache.Count - config.MaxCacheSize) / cache.Count);
}
}
return secret;
}