Home

Awesome

Javascript Object Expire

Time aware data structures.

For now Expiring Map is supported.

ExpiringMap

ExpiringMap is used when we want to store self-expiring objects.

Example

First we initialize object holder var map = new ExpiringMap();

Then we put two objects in it:

map.put("foo",{someNumber:321});
map.put("bar",{someString:"test string"});

and if within next 60 seconds we try to get key foo: map.get("foo");

//returns {someNumber:321}

if we wait longer than 60 seconds (default expire time)

map.get("foo");

//returns false

You can also specify default object timeout on init: var map = new ExpiringMap({defaultTimeout:20}); //in seconds

Or you can specify timeout for each key individually: map.put("foo",{someNumber:321}, 600); //expire key foo after 600 seconds

On Expire Callbacks

Also you can define callback for each key

map.put("foo",{someNumber:321}, 30, function(key, data){
    console.log("key "+key+" has expired, data was:");
    console.log(data);    
});

Callback will be executed when we call get method for this key again after expiration time map.get("foo");

//this will trigger callback on key foo

Or when we call getKeyList after expiration time map.getKeyList();

//this will trigger callbacks on all expired keys

ExpiringMap Documentation