in aws_secretsmanager_caching/src/secret_store/memory_store/mod.rs [60:77]
fn get_secret_value(
&self,
secret_id: &str,
version_id: Option<&str>,
version_stage: Option<&str>,
) -> Result<GetSecretValueOutputDef, SecretStoreError> {
match self.gsv_cache.get(&Key {
secret_id: secret_id.to_string(),
version_id: version_id.map(String::from),
version_stage: version_stage.map(String::from),
}) {
Some(gsv) if gsv.last_updated_at.elapsed() > self.ttl => {
Err(SecretStoreError::CacheExpired(Box::new(gsv.value.clone())))
}
Some(gsv) => Ok(gsv.clone().value),
None => Err(SecretStoreError::ResourceNotFound),
}
}