4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly<style scoped>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly/* custom styles for this example */
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly#demo fieldset {display:block; border:0;}
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly#demo .short {width:2em;}
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly</style>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly<form id="demo">
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_max">Cache max: <input type="text" id="demo_max" class="short" value="0"> <input type="button" id="demo_setMax" value="Set max"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_setUniqueKeys">Enforce unique keys: <input type="checkbox" id="demo_setUniqueKeys"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly </fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_expires">Data expires after: <input type="text" id="demo_expires" class="med" value="86400000"> milliseconds
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <input type="button" id="demo_setExpires" value="Set expires"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly </fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_addKey">Key: <input type="text" id="demo_addKey"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_addValue">Value: <input type="text" id="demo_addValue"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <input type="button" id="demo_add" value="Cache value">
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly </fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <label for="demo_retrieveKey">Key: <input type="text" id="demo_retrieveKey"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <input type="button" id="demo_retrieve" value="Retrieve value">
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly </fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly <input type="button" id="demo_flush" value="Flush cache"></label>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly </fieldset>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly</form>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
7e57b4b1fec6ea772cf1d829165ff20b93a7593cJenny Donnelly<script>
4e2bc03d0ba795d507670920a0b039982f520e0bJenny DonnellyYUI().use("node", "datatype-number", "cache-base" ,function (Y) {
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly var cache = new Y.Cache();
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly cache.set("max", Y.DataType.Number.parse(Y.one("#demo_max").get("value")));
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert("Cache max set to " + cache.get("max") + ".");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_setMax");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly cache.set("uniqueKeys", Y.one("#demo_setUniqueKeys").get("checked"));
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert("Cache uniqueKeys set to " + cache.get("uniqueKeys") + ".");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_setUniqueKeys");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly cache.set("expires", Y.DataType.Number.parse(Y.one("#demo_expires").get("value")));
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert("Cache \"expires\" set to " + cache.get("expires") + ".");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_setExpires");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly cache.add(Y.one("#demo_addKey").get("value"), Y.one("#demo_addValue").get("value"));
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly var msg = cache.get("max") ?
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly "Value cached. Cache size is now " + cache.get("size") + "." :
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly "Cache max is " + cache.get("max") + ". Value not cached."
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert(msg);
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_add");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly var entry = cache.retrieve(Y.one("#demo_retrieveKey").get("value")),
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly output = entry ? entry.response : "Value not cached.";
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert(output);
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_retrieve");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly Y.on("click", function(e){
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly cache.flush();
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly alert("Cache flushed.");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly }, "#demo_flush");
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly});
4e2bc03d0ba795d507670920a0b039982f520e0bJenny Donnelly</script>