INNER CODE UNIT · Go
NewTimedCache
kubernetes-csi/csi-driver-nfs · pkg/nfs/cache.go:76
func NewTimedCache(ttl time.Duration, getter GetFunc, disabled bool) (Resource, error) {
if getter == nil {
return nil, fmt.Errorf("getter is not provided")
}
if disabled {
return &DisabledCache{Getter: getter}, nil
}
timedCache := &TimedCache{
Store: cache.NewStore(cacheKeyFunc),
MutexLock: sync.RWMutex{},
TTL: ttl,
Getter: getter,
}
return timedCache, nil
}