package lark | |
import ( | |
"context" | |
"github.com/Xhofe/go-cache" | |
"time" | |
) | |
type TokenCache struct { | |
cache.ICache[string] | |
} | |
func (t *TokenCache) Set(_ context.Context, key string, value string, expireTime time.Duration) error { | |
t.ICache.Set(key, value, cache.WithEx[string](expireTime)) | |
return nil | |
} | |
func (t *TokenCache) Get(_ context.Context, key string) (string, error) { | |
v, ok := t.ICache.Get(key) | |
if ok { | |
return v, nil | |
} | |
return "", nil | |
} | |
func newTokenCache() *TokenCache { | |
c := cache.NewMemCache[string]() | |
return &TokenCache{c} | |
} | |