ImmutableProxiedSession

Implementation of the {@link Session Session} interface that proxies another <code>Session</code>, but does not allow any 'write' operations to the underlying session. It allows 'read' operations only. <p/> The <code>Session</code> write operations are defined as follows. A call to any of these methods on this proxy will immediately result in an {@link InvalidSessionException} being thrown: <ul> <li>{@link Session#setTimeout(long) Session.setTimeout(long)}</li> <li>{@link Session#touch() Session.touch()}</li> <li>{@link Session#stop() Session.stop()}</li> <li>{@link Session#setAttribute(Object, Object) Session.setAttribute(key,value)}</li> <li>{@link Session#removeAttribute(Object) Session.removeAttribute(key)}</li> </ul> Any other method invocation not listed above will result in a corresponding call to the underlying <code>Session</code>.

Constructors

this
this(Session target)

Constructs a new instance of this class proxying the specified <code>Session</code>.

Members

Functions

removeAttribute
Object removeAttribute(Object key)

Immediately {@link #throwImmutableException() throws} an <code>InvalidSessionException</code> in all cases because this proxy is immutable.

setAttribute
void setAttribute(Object key, Object value)

Immediately {@link #throwImmutableException() throws} an <code>InvalidSessionException</code> in all cases because this proxy is immutable.

setTimeout
void setTimeout(long maxIdleTimeInMillis)

Immediately {@link #throwImmutableException() throws} an <code>InvalidSessionException</code> in all cases because this proxy is immutable.

stop
void stop()

Immediately {@link #throwImmutableException() throws} an <code>InvalidSessionException</code> in all cases because this proxy is immutable.

throwImmutableException
void throwImmutableException()

Simply<code>InvalidSessionException</code> indicating that this proxy is immutable. Used only in the Session's 'write' methods documented in the top class-level JavaDoc.

touch
void touch()

Immediately {@link #throwImmutableException() throws} an <code>InvalidSessionException</code> in all cases because this proxy is immutable.

Inherited Members

From ProxiedSession

session
Session session;

The proxied instance

getId
string getId()

Immediately delegates to the underlying proxied session.

getStartTimestamp
Date getStartTimestamp()

Immediately delegates to the underlying proxied session.

getLastAccessTime
Date getLastAccessTime()

Immediately delegates to the underlying proxied session.

getTimeout
long getTimeout()

Immediately delegates to the underlying proxied session.

setTimeout
void setTimeout(long maxIdleTimeInMillis)

Immediately delegates to the underlying proxied session.

getHost
string getHost()

Immediately delegates to the underlying proxied session.

touch
void touch()

Immediately delegates to the underlying proxied session.

stop
void stop()

Immediately delegates to the underlying proxied session.

getAttributeKeys
Object[] getAttributeKeys()

Immediately delegates to the underlying proxied session.

getAttribute
Object getAttribute(Object key)

Immediately delegates to the underlying proxied session.

setAttribute
void setAttribute(Object key, Object value)

Immediately delegates to the underlying proxied session.

removeAttribute
Object removeAttribute(Object key)

Immediately delegates to the underlying proxied session.

Meta