From 6632b1f8eb18a7d47318d4f12390807d3bec3fcb Mon Sep 17 00:00:00 2001 From: Ivasan7 <39991502+Ivasan7@users.noreply.github.com> Date: Fri, 26 Aug 2022 20:43:37 +0200 Subject: [PATCH] feature:workaround for removing the libcache.RemoveonExpired func --- _examples/jwt/main.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/_examples/jwt/main.go b/_examples/jwt/main.go index c655b7a..9303208 100644 --- a/_examples/jwt/main.go +++ b/_examples/jwt/main.go @@ -65,9 +65,17 @@ func setupGoGuardian() { } cache := libcache.FIFO.New(0) cache.SetTTL(time.Minute * 5) - cache.RegisterOnExpired(func(key, _ interface{}) { - cache.Peek(key) - }) + + chl := make(chan libcache.Event) + defer close(chl) + + cache.Notify(chl, libcache.Remove) + + go func(chl chan libcache.Event) { + event := <-chl + cache.Peek(event.Key) + }(chl) + basicStrategy := basic.NewCached(validateUser, cache) jwtStrategy := jwt.New(cache, keeper) strategy = union.New(jwtStrategy, basicStrategy)