| java.lang.Object org.gridsphere.portlet.impl.PortletSessionImpl
PortletSessionImpl | public class PortletSessionImpl implements PortletSession,HttpSession(Code) | | The PortletSession interface provides a way to identify a user
across more than one request and to store transient information about that user.
A PortletSession is created per user client per portlet application.
A portlet can bind an object attribute into a PortletSession by name.
The PortletSession interface defines two scopes for storing objects:
APPLICATION_SCOPE
PORTLET_SCOPE
All objects stored in the session using the APPLICATION_SCOPE
must be available to all the portlets, servlets and
JSPs that belongs to the same portlet application and that handles a
request identified as being a part of the same session.
Objects stored in the session using the PORTLET_SCOPE must be
available to the portlet during requests for the same portlet window
that the objects where stored from. Attributes stored in the
PORTLET_SCOPE are not protected from other web components
of the portlet application. They are just conveniently namespaced.
The portlet session is based on the HttpSession . Therefore all
HttpSession listeners do apply to the portlet session and
attributes set in the portlet session are visible in the HttpSession
and vice versa.
|
Method Summary | |
public Object | getAttribute(String name) Returns the object bound with the specified name in this session
under the PORTLET_SCOPE , or null if no
object is bound under the name in that scope. | public java.lang.Object | getAttribute(String name, int scope) Returns the object bound with the specified name in this session,
or null if no object is bound under the name in the given scope. | public java.util.Enumeration | getAttributeNames() Returns an Enumeration of String objects containing the names of
all the objects bound to this session under the PORTLET_SCOPE , or an
empty Enumeration if no attributes are available. | public java.util.Enumeration | getAttributeNames(int scope) Returns an Enumeration of String objects containing the names of
all the objects bound to this session in the given scope, or an
empty Enumeration if no attributes are available in the
given scope. | public long | getCreationTime() Returns the time when this session was created, measured in
milliseconds since midnight January 1, 1970 GMT. | public String | getId() Returns a string containing the unique identifier assigned to this session. | public long | getLastAccessedTime() Returns the last time the client sent a request associated with this session,
as the number of milliseconds since midnight January 1, 1970 GMT. | public int | getMaxInactiveInterval() Returns the maximum time interval, in seconds, for which the portlet container
keeps this session open between client accesses. | public PortletContext | getPortletContext() Returns the portlet application context associated with this session. | public javax.servlet.ServletContext | getServletContext() | public javax.servlet.http.HttpSessionContext | getSessionContext() | public Object | getValue(String name) | public String[] | getValueNames() | public void | invalidate() Invalidates this session (all scopes) and unbinds any objects bound to it. | public boolean | isNew() Returns true if the client does not yet know about the session or
if the client chooses not to join the session. | public void | putValue(String name, Object value) | public void | removeAttribute(String name) Removes the object bound with the specified name under
the PORTLET_SCOPE from
this session. | public void | removeAttribute(String name, int scope) Removes the object bound with the specified name and the given scope from
this session. | public void | removeValue(String name) | public void | setAttribute(String name, Object value) Binds an object to this session under the PORTLET_SCOPE , using the name specified.
If an object of the same name in this scope is already bound to the session,
that object is replaced.
After this method has been executed, and if the new object
implements HttpSessionBindingListener ,
the container calls
HttpSessionBindingListener.valueBound . | public void | setAttribute(java.lang.String name, java.lang.Object value, int scope) Binds an object to this session in the given scope, using the name specified.
If an object of the same name in this scope is already bound to the session,
that object is replaced.
After this method has been executed, and if the new object
implements HttpSessionBindingListener ,
the container calls
HttpSessionBindingListener.valueBound . | public void | setMaxInactiveInterval(int interval) Specifies the time, in seconds, between client requests, before the
portlet container invalidates this session. |
PortletSessionImpl | public PortletSessionImpl(HttpServletRequest request, HttpSession session, PortletContext ctx)(Code) | | Constructs an instance of SportletSession from a
HttpSession
Parameters: request - the PortletRequest used to get ConcretePortletID Parameters: session - the HttpSession |
getAttribute | public java.lang.Object getAttribute(String name, int scope) throws java.lang.IllegalStateException(Code) | | Returns the object bound with the specified name in this session,
or null if no object is bound under the name in the given scope.
Parameters: name - a string specifying the name of the object Parameters: scope - session scope of this attribute throws: IllegalStateException - if this method is called on aninvalidated session throws: IllegalArgumentException - if name is null . the object with the specified name |
getAttributeNames | public java.util.Enumeration getAttributeNames() throws IllegalStateException(Code) | | Returns an Enumeration of String objects containing the names of
all the objects bound to this session under the PORTLET_SCOPE , or an
empty Enumeration if no attributes are available.
throws: IllegalStateException - if this method is called on aninvalidated session an Enumeration ofString objects specifying thenames of all the objects bound tothis session, or an empty Enumeration if no attributes are available. |
getAttributeNames | public java.util.Enumeration getAttributeNames(int scope)(Code) | | Returns an Enumeration of String objects containing the names of
all the objects bound to this session in the given scope, or an
empty Enumeration if no attributes are available in the
given scope.
Parameters: scope - session scope of the attribute names throws: IllegalStateException - if this method is called on aninvalidated session an Enumeration ofString objects specifying thenames of all the objects bound tothis session, or an empty Enumeration if no attributes are available in the given scope. |
getCreationTime | public long getCreationTime() throws IllegalStateException(Code) | | Returns the time when this session was created, measured in
milliseconds since midnight January 1, 1970 GMT.
throws: IllegalStateException - if this method is called on aninvalidated session a long specifyingwhen this session was created,expressed inmilliseconds since 1/1/1970 GMT |
getId | public String getId()(Code) | | Returns a string containing the unique identifier assigned to this session.
a string specifying the identifierassigned to this session |
getLastAccessedTime | public long getLastAccessedTime()(Code) | | Returns the last time the client sent a request associated with this session,
as the number of milliseconds since midnight January 1, 1970 GMT.
Actions that your portlet takes, such as getting or setting
a value associated with the session, do not affect the access
time.
a long representing the last timethe client sent a request associatedwith this session, expressed inmilliseconds since 1/1/1970 GMT |
getMaxInactiveInterval | public int getMaxInactiveInterval()(Code) | | Returns the maximum time interval, in seconds, for which the portlet container
keeps this session open between client accesses. After this interval,
the portlet container invalidates the session. The maximum time
interval can be set
with the setMaxInactiveInterval method.
A negative time indicates the session should never timeout.
an integer specifying the number ofseconds this session remains openbetween client requests See Also: PortletSessionImpl.setMaxInactiveInterval |
getPortletContext | public PortletContext getPortletContext()(Code) | | Returns the portlet application context associated with this session.
the portlet application context |
invalidate | public void invalidate() throws IllegalStateException(Code) | | Invalidates this session (all scopes) and unbinds any objects bound to it.
Invalidating the portlet session will result in invalidating the underlying
HttpSession
throws: IllegalStateException - if this method is called on asession which has already been invalidated |
isNew | public boolean isNew() throws IllegalStateException(Code) | | Returns true if the client does not yet know about the session or
if the client chooses not to join the session.
true if theserver has created a session,but the client has not joined yet. throws: IllegalStateException - if this method is called on asession which has already been invalidated |
removeAttribute | public void removeAttribute(String name) throws IllegalStateException, IllegalArgumentException(Code) | | Removes the object bound with the specified name under
the PORTLET_SCOPE from
this session. If the session does not have an object
bound with the specified name, this method does nothing.
Parameters: name - the name of the object to beremoved from this session in the PORTLET_SCOPE . throws: IllegalStateException - if this method is called on asession which has been invalidated throws: IllegalArgumentException - if name is null . |
removeAttribute | public void removeAttribute(String name, int scope) throws java.lang.IllegalStateException(Code) | | Removes the object bound with the specified name and the given scope from
this session. If the session does not have an object
bound with the specified name, this method does nothing.
Parameters: name - the name of the object to beremoved from this session Parameters: scope - session scope of this attribute throws: IllegalStateException - if this method is called on asession which has been invalidated throws: IllegalArgumentException - if name is null . |
setAttribute | public void setAttribute(String name, Object value) throws IllegalStateException, IllegalArgumentException(Code) | | Binds an object to this session under the PORTLET_SCOPE , using the name specified.
If an object of the same name in this scope is already bound to the session,
that object is replaced.
After this method has been executed, and if the new object
implements HttpSessionBindingListener ,
the container calls
HttpSessionBindingListener.valueBound . The container then
notifies any HttpSessionAttributeListeners in the web
application.
If an object was already bound to this session
that implements HttpSessionBindingListener , its
HttpSessionBindingListener.valueUnbound method is called.
If the value is null , this has the same effect as calling
removeAttribute() .
Parameters: name - the name to which the object is bound underthe PORTLET_SCOPE ;this cannot be null . Parameters: value - the object to be bound throws: IllegalStateException - if this method is called on asession which has been invalidated throws: IllegalArgumentException - if name is null . |
setAttribute | public void setAttribute(java.lang.String name, java.lang.Object value, int scope) throws IllegalStateException(Code) | | Binds an object to this session in the given scope, using the name specified.
If an object of the same name in this scope is already bound to the session,
that object is replaced.
After this method has been executed, and if the new object
implements HttpSessionBindingListener ,
the container calls
HttpSessionBindingListener.valueBound . The container then
notifies any HttpSessionAttributeListeners in the web
application.
If an object was already bound to this session
that implements HttpSessionBindingListener , its
HttpSessionBindingListener.valueUnbound method is called.
If the value is null , this has the same effect as calling
removeAttribute() .
Parameters: name - the name to which the object is bound;this cannot be null . Parameters: value - the object to be bound Parameters: scope - session scope of this attribute throws: IllegalStateException - if this method is called on asession which has been invalidated throws: IllegalArgumentException - if name is null . |
setMaxInactiveInterval | public void setMaxInactiveInterval(int interval)(Code) | | Specifies the time, in seconds, between client requests, before the
portlet container invalidates this session. A negative time
indicates the session should never timeout.
Parameters: interval - An integer specifying the numberof seconds |
|
|