sunlabs.brazil.handler

Class CookieSessionHandler

public class CookieSessionHandler extends Object implements Handler

Handler for creating browser sessions using cookies. This handler provides a single cookie-id that may be used by other handlers. The intent is to require only one cookie per server. (See also {@link sunlabs.brazil.filter.SessionFilter}, which manages sessions with or without cookies). The following server properties are used:
prefix, suffix, glob, match
Specify the URL that triggers this handler (See {@link MatchString}).

If prefix is specified, it is also used to instruct the client to limit the scope of the browser cookie. to that prefix.

cookie
the name of the cookie to use (defaults to "cookie").
map
If specified, the ident argument to {@link SessionManager#getSession} to get the table of valid cookies, used to map the cookie value to a Session ID. By default, the Session ID stored in the request is the cookie value itself.
exist
If specified, this means that the Session ID corresponding to the cookie value must already exist in the SessionManager. Normally, if the cookie was not present, a new cookie is automatically created.
persist
If set, cookies persist across browser sessions
session
The name of the request property that the Session ID will be stored in, to be passed to downstream handler. The default value is "SessionID". If the property already exists, and is not empty, no action will be taken.
If a cookie was returned from the browser, the property: gotCookie is set to the cookie name. Otherwise it is left unset.

Version: 2.2, 06/11/13

Author: Stephen Uhler

Field Summary
StringcookieName
Stringident
booleanmustExist
booleanpersist
Stringsession
Method Summary
booleaninit(Server server, String propsPrefix)
booleanrespond(Request request)

Field Detail

cookieName

public String cookieName

ident

public String ident

mustExist

public boolean mustExist

persist

public boolean persist

session

public String session

Method Detail

init

public boolean init(Server server, String propsPrefix)

respond

public boolean respond(Request request)