Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Javascript Self-Expiring Objects
JavaScript
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
examples
lib
src
README.md
pom.xml

README.md

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

Something went wrong with that request. Please try again.