org.zkoss.zk.ui
Interface Session

All Known Implementing Classes:
SerializableSession, SimpleSession

public interface Session

A user session.

To get the current session, use Sessions.getCurrent(), or Desktop.getSession().

A session, Session, might have multiple pages, Page, while a page belongs to exactly one session. A page, Page, might have many components, Component, while a component belongs to exactly one page.

Author:
tomyeh

Method Summary
 java.lang.Object getAttribute(java.lang.String name)
          Returns the value of the specified custom attribute.
 java.util.Map getAttributes()
          Returns a map of custom attributes associated with this session.
 java.lang.String getClientAddr()
          Returns the Internet Protocol (IP) address of the client that creates this session.
 java.lang.String getClientHost()
          Returns the fully qualified name of the client that creates this session.
 java.lang.String getDeviceType()
          Returns the device type that this session belongs to.
 int getMaxInactiveInterval()
          Return the time, in seconds, between client requests before the servlet container will invalidate this session.
 java.lang.Object getNativeSession()
          Returns the native session, or null if not available.
 WebApp getWebApp()
          Returns the Web application that this session belongs to.
 void invalidate()
          Invalidates this session then unbinds any objects bound to it.
 void removeAttribute(java.lang.String name)
          Removes the specified custom attribute.
 void setAttribute(java.lang.String name, java.lang.Object value)
          Sets the value of the specified custom attribute.
 void setMaxInactiveInterval(int interval)
          Specifies the time, in seconds, between client requests before the servlet container will invalidate this session.
 

Method Detail

getDeviceType

java.lang.String getDeviceType()
Returns the device type that this session belongs to.

A device type identifies the type of a client. For example, "ajax" represents the Web browsers with Ajax support, while "mil" represents clients that supports Mobile Interactive markup Language (on Limited Connected Device, such as mobile phones).

All desktops of the same session must belong to the same device type.

The session's device type is determined by the first desktop's device type.

Since:
2.4.1

getAttribute

java.lang.Object getAttribute(java.lang.String name)
Returns the value of the specified custom attribute.


setAttribute

void setAttribute(java.lang.String name,
                  java.lang.Object value)
Sets the value of the specified custom attribute.


removeAttribute

void removeAttribute(java.lang.String name)
Removes the specified custom attribute.


getAttributes

java.util.Map getAttributes()
Returns a map of custom attributes associated with this session.


getWebApp

WebApp getWebApp()
Returns the Web application that this session belongs to.


getClientAddr

java.lang.String getClientAddr()
Returns the Internet Protocol (IP) address of the client that creates this session.


getClientHost

java.lang.String getClientHost()
Returns the fully qualified name of the client that creates this session. If the engine cannot or chooses not to resolve the hostname, this method returns the dotted-string form of the IP address.


invalidate

void invalidate()
Invalidates this session then unbinds any objects bound to it.

Note: you usually have to ask the client to redirect to another page (or reload the same page) by use of Executions.sendRedirect(java.lang.String).

The session is not invalidated immediately. Rather, it is invalidated after processing the current request.


setMaxInactiveInterval

void setMaxInactiveInterval(int interval)
Specifies the time, in seconds, between client requests before the servlet container will invalidate this session. A negative time indicates the session should never timeout.

See Also:
Configuration.setTimerKeepAlive(boolean), Configuration.setSessionMaxInactiveInterval(int)

getMaxInactiveInterval

int getMaxInactiveInterval()
Return the time, in seconds, between client requests before the servlet container will invalidate this session. A negative time indicates the session should never timeout.

Since:
3.0.0
See Also:
Configuration.isTimerKeepAlive(), Configuration.getSessionMaxInactiveInterval()

getNativeSession

java.lang.Object getNativeSession()
Returns the native session, or null if not available. The returned object depends on the type of clients. If the client is a browser, the object is an instance of javax.servlet.http.HttpSession.



Copyright © 2005-2007 Potix Corporation. All Rights Reserved.