1.0.0 • Published 10 years ago

gracenode-session v1.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
10 years ago

gracenode-session Module

gracenode-session is designed to work within the Gracenode framework. It can not function without the Gracenode framework.

Installation

npm install gracenode-session

Or add it to your package.json

"dependencies": {
	"gracenode": "",
	"gracenode-session": ""
}

Gracenode does not automatically detect middleware. To add the session module to your framework you have to call use.

var gracenode = require('gracenode');
gracenode.use('gracenode-session');

Loading the session module like this will expose it in gracenode.session.

Configuration

This module requires you to have a configuration parameter set for the TTL. Below is a configuration example.

"modules": {
	"session": {
		"ttl": int (in seconds)
	}
}

##Version 1.0.0 Since version 1.0.0 there is a backward compatability break. When calling getSession a data object is no longer returned, instead an instantiated Session class is returned which allows for more control over the session data without having to query your datastore.

##API

###Session Object When calling getSession an instance of the Session class is returned to retrieve and set data to the session.

####Session.get Returns a value for key if this has been stored.

session.get('key');

####Session.set Set a value for key.

session.set('foo', 'bar');

####Session.save Save the current data to your datastore.

session.save(function (error) {
	//Your magic
});

###Methods

####session.setGetter(getterFunction {function}) Used to read data for getSession

####session.setSetter(setterFunction {function}) Used to store data for setSession

####session.setRemover(deleteFunction {function}) Used to delte data for delSession

####session.setFlusher(flusherFunction {function}) Used to flush data for flush

####session.get Shorthand for getSession.

####session.set Shorthand for setSession.

####session.replace Shorthand for replaceSession.

####session.del Shorthand for delSession.

####session.flush Shorthand for flushSession.

####session.getSession(sessionId {string, int}, callback {function}) Retrieve a new Session object from sessionId.

####session.setSession(sessionId {string, int}, data {object}, callback {function}) Start a new session

####session.replaceSession(sessionId {string, int}, callback {function}); Replace the session with data in data. It is prefered you call Session.save instead.

####session.delSession(sessionId {string, int}, callback {function}) Destroy a session

####session.flushSession(callback {function}) Flush a session