Skip to content

41zone/applicationcontext

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

The Key-Value global storage, it's look like ApplicationContext for Servlet.

Usage

npm install applicationcontext --save

API

Require

var AppContext = require('applicationcontext');

Setter & Getter

set([key,]value)

  • key {String}, Optional : the name of value , use this format named ,like 'a.b.c'
  • value {AnyType} : if use plain object , please note that the key named do not look like 'a.b.c', otherwise, there is some error to invoke 'get' method
AppContext.set("username","Jimmy Song");
console.log(AppContext.get("username"));

//Use Plain Object like this 
AppContext.set({
	session : {
		name : "user",
		expire : 3000
	},
	
	// do not name key that look like 'a.b.c', it's error
	"local.name" : "good"
});
console.log(AppContext.get("session.name")); // output : user
console.log(AppContext.get("local.name")); // output : undefined

get(key)

  • key {String} : e.g AppContext.get('username'); or AppContext.get('session.name')

remove(key)

  • key {String} : e.g AppContext.remove('username'); or AppContext.remove('session.name')

clear()

  • Remove all data

Event

on(key,listener)

// add event listener for some key
AppContext.on('session.name',function(value,message){
	// 'value' is stored value , and 'message' is extra information while the event is triggered
	console.log("the value is ",value);
	console.log("and extra message is ",message);
});

emit(key,message)

// emit event named 'session.name', and use extra message
AppContext.set('session.name','Freeman'); 
AppContext.emit('session.name','hi, there is extra information, just tell you the session.name value is changed');

off(key [ , listener ] )

// Remove the specified listener for 'session.name'
AppContext.off('session.name',listener);

// Remove all listener for 'session.name'
AppContext.off('session.name');

About

Application Context for Node.js

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published