CacheStrategy
CacheStrategy
The CacheStrategy defines how the underlying shared cache mechanism is implemented.
It is used by the CacheService to take care of storage and retrieval of items from the cache.
Signature
interface CacheStrategy extends InjectableStrategy {
get<T extends JsonCompatible<T>>(key: string): Promise<T | undefined>;
set<T extends JsonCompatible<T>>(key: string, value: T, options?: SetCacheKeyOptions): Promise<void>;
delete(key: string): Promise<void>;
invalidateTags(tags: string[]): Promise<void>;
}
- Extends:
InjectableStrategy
get
method
(key: string) => Promise<T | undefined>
Gets an item from the cache, or returns undefined if the key is not found, or the item has expired.
set
method
(key: string, value: T, options?: SetCacheKeyOptions) => Promise<void>
Sets a key-value pair in the cache. The value must be serializable, so cannot contain things like functions, circular data structures, class instances etc.
Optionally a "time to live" (ttl) can be specified, which means that the key will be considered stale after that many milliseconds.
delete
method
(key: string) => Promise<void>
Deletes an item from the cache.
invalidateTags
method
(tags: string[]) => Promise<void>
Deletes all items from the cache which contain at least one matching tag.