From 86d95e57c923e54ee0ba596afc7a36f2bb16da12 Mon Sep 17 00:00:00 2001 From: Amar Chand Date: Tue, 23 Aug 2022 18:18:25 +0530 Subject: [PATCH] Adds option to flush cache after ttl --- src/simple_cache.erl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/simple_cache.erl b/src/simple_cache.erl index 766034b..9516009 100644 --- a/src/simple_cache.erl +++ b/src/simple_cache.erl @@ -90,7 +90,13 @@ get(CacheName, LifeTime, Key, FunResult, Options) -> true -> prometheus_summary:observe(simple_cache_hit_boolean, [CacheName], 0); false -> ok end, - create_value(CacheName, LifeTime, Key, FunResult); + case maps:get(flush_after_ttl, Options, false) of + false -> + create_value(CacheName, LifeTime, Key, FunResult); + teue -> + flush(CacheName, Key), + {error, expired} + end; true -> case CollectMetric of true -> prometheus_summary:observe(simple_cache_hit_boolean, [CacheName], 1);