HydraExpress™ C++ 2020 |
HydraExpress™ C++ API Reference Guide |
Product Documentation: HydraExpress C++ Documentation Home |
Stores user specific information and identifies a user across multiple requests or site visits. More...
#include <rwsf/servlet/http/HttpSession.h>
Public Member Functions | |
HttpSession () | |
HttpSession (const HttpSession &second) | |
virtual | ~HttpSession () |
rwsf::Attribute | getAttribute (const std::string &name) const |
rwsf::Enumeration< std::string > | getAttributeNames () const |
rwsf::DateTime | getCreationTime () const |
std::string | getId () const |
rwsf::DateTime | getLastAccessedTime () const |
int | getMaxInactiveInterval () const |
rwsf::ServletContext | getServletContext () const |
void | invalidate () |
bool | isNew () const |
virtual bool | isValid () const |
HttpSession & | operator= (const HttpSession &s) |
rwsf::Attribute | removeAttribute (const std::string &name) |
void | setAttribute (const std::string &name, const rwsf::Attribute &value) |
void | setFromCookie () |
void | setFromURL () |
void | setMaxInactiveInterval (int interval) |
Public Member Functions inherited from rwsf::HandleBase | |
bool | isValid (void) const |
bool | operator!= (const HandleBase &second) const |
bool | operator== (const HandleBase &second) const |
Additional Inherited Members | |
Protected Member Functions inherited from rwsf::HandleBase | |
HandleBase (void) | |
HandleBase (StaticCtor) | |
HandleBase (BodyBase *body) | |
HandleBase (const HandleBase &second) | |
virtual | ~HandleBase (void) |
BodyBase & | body (void) const |
HandleBase & | operator= (const HandleBase &second) |
rwsf::HttpSession provides a convenient interface for maintaining state across HTTP requests. The class allows access to information about a session, such as when the session was created and when the session was last accessed.
Each session object contains a unique session ID. The session ID is stored in a client's browser using either a cookie or by rewriting the URL to include the session ID. When the client submits a new request to the servlet, the Agent uses the session ID to automatically associate the saved session with the new request.
A session represents state as a collection of rwsf::Attribute objects. Each attribute is associated with an attribute name.
A listener can register interest in session events, such as when new attributes are added, or when a session is invalidated or times out. For more information on receiving session events, see rwsf::HttpSessionListener.
The behavior of the following functions are inconsistent with or not defined in the Java Servlet Specification v2.3.
setFromCookie() | Added method |
setFromURL() | Added method |
rwsf::HttpSession::HttpSession | ( | ) |
Creates an empty, invalid session object. Use rwsf::HttpServletRequest::getSession() to create a valid session.
rwsf::HttpSession::HttpSession | ( | const HttpSession & | second | ) |
Creates a new HttpSession handle to the body instance of second.
|
virtual |
Detaches from the current body (if any), decrements its reference count, and deletes it if there are no other references.
rwsf::Attribute rwsf::HttpSession::getAttribute | ( | const std::string & | name | ) | const |
Returns the specified attribute. Attribute name comparisons are case sensitive. If the named attribute is not found, returns an empty attribute.
rwsf::Enumeration<std::string> rwsf::HttpSession::getAttributeNames | ( | ) | const |
Returns an enumeration of all attribute names in this session. If there are no attributes, returns an empty enumeration.
rwsf::DateTime rwsf::HttpSession::getCreationTime | ( | ) | const |
Returns the time that this session was created.
std::string rwsf::HttpSession::getId | ( | ) | const |
Returns the unique ID for this session. The Agent guarantees that each session ID is unique for the Agent.
rwsf::DateTime rwsf::HttpSession::getLastAccessedTime | ( | ) | const |
Returns the last time that a client sent a request associated with this session. The time is updated only when a client sends a request to the Agent with this session.
int rwsf::HttpSession::getMaxInactiveInterval | ( | ) | const |
Returns the maximum time interval (in seconds) that this session can remain inactive. If this session is inactive longer than this value allows, the Agent invalidates the session. If the interval is negative, this session will never time out.
rwsf::ServletContext rwsf::HttpSession::getServletContext | ( | ) | const |
Returns the context that created this session.
void rwsf::HttpSession::invalidate | ( | ) |
Invalidates this session and removes any attributes associated with it. When the session is invalidated, all rwsf::HttpSessionListener objects attached to the rwsf::ServletContext are notified that this session has been invalidated.
bool rwsf::HttpSession::isNew | ( | ) | const |
Returns true
if the client has not yet returned the session identifier to the Agent. Otherwise, returns false
.
|
virtual |
Returns true
if this session object has a valid body and has a valid session ID.
HttpSession& rwsf::HttpSession::operator= | ( | const HttpSession & | s | ) |
Associates this handle with the body instance of s. Returns a reference to self.
rwsf::Attribute rwsf::HttpSession::removeAttribute | ( | const std::string & | name | ) |
Removes the named attribute from this session and returns the attribute. If the named attribute is not found, this method returns an empty attribute.
void rwsf::HttpSession::setAttribute | ( | const std::string & | name, |
const rwsf::Attribute & | value | ||
) |
Stores the named attribute in this session. Attributes store servlet state between client invocations.
void rwsf::HttpSession::setFromCookie | ( | ) |
Sets this session to use cookies when sending session information back to the client.
void rwsf::HttpSession::setFromURL | ( | ) |
Sets this session to use URL rewriting when sending session information back to the client. This function has no effect if the client has already used a cookie to return the session identifier.
void rwsf::HttpSession::setMaxInactiveInterval | ( | int | interval | ) |
Sets the session lifetime to interval seconds. If this session remains inactive longer than interval, the Agent invalidates the session. If interval is negative, this session will never time out.
Copyright © 2020 Rogue Wave Software, Inc. All Rights Reserved. |