Cache

Members

policy : Map<string|RegExp, number>

The cache policies that this application uses.

storage : any

Any object that can be used as storage, valid values can be {}, window.localStorage, window.sessionStorage or any class that can be used as a key/value storage.

Methods

constructor(storage)

Create a cache instance that can be used in the SDK.

  • storage should match the storage member;

const myCache = new Cache(window.localStorage)

async cache(key, callback)

Attempt to get a cached value based on a key, it is not found in the cache, create it from the callback function.

circle-info

The callback function can be asynchronous.

invalidate(key)

Remove a key or a cache group from the cache.

  • key must be a string that matches the cache key or a regular expression;

addPolicy(key, lifespan)

Add a new cache policy to the cache object.

  • key must be a string that matches the cache key or a regular expression;

  • lifespan specifies for how long the cache object should be valid in seconds;

static use(cacheBuilder)

Use a specific cache object for the global cache.

  • cacheBuilder must be a function that returns Cache;

static get()

Get the global cache object.

Helpers

async function cache(key, callback)

Cache something globally.

circle-info

This function is an alias for Cache.get().cache(key, callback).

function invalidate(key)

Invalidate something from global cache.

circle-info

This function is an alias for Cache.get().invalidate(key).

escapePolicyPart(string)

Escape a variable to be used in a regex.

Last updated