AI-generated Key Takeaways
-
SSLSessionContextstores and manages multipleSSLSessions, often associated with a server or client involved in concurrent sessions. -
Session storage is customizable, allowing for expiration time limits and maximum session counts.
-
Sessions can be retrieved using their unique session IDs, and all IDs within the context are accessible.
-
Not all environments support session contexts, so availability should be considered.
A SSLSessionContext represents a set of
SSLSessions associated with a single entity. For example,
it could be associated with a server or client who participates in many
sessions concurrently.
Not all environments will contain session contexts.
There are SSLSessionContext parameters that affect how
sessions are stored:
- Sessions can be set to expire after a specified time limit.
- The number of sessions that can be stored in context can be limited.
SSLSessionContext can be listed.
See Also
Public Method Summary
| abstract Enumeration<byte[]> |
getIds()
Returns an Enumeration of all session id's grouped under this
SSLSessionContext. |
| abstract SSLSession |
getSession(byte[] sessionId)
Returns the
SSLSession bound to the specified session id. |
| abstract int |
getSessionCacheSize()
Returns the size of the cache used for storing
SSLSession objects grouped under this
SSLSessionContext. |
| abstract int |
getSessionTimeout()
Returns the timeout limit of
SSLSession objects grouped
under this SSLSessionContext. |
| abstract void |
setSessionCacheSize(int size)
Sets the size of the cache used for storing
SSLSession objects grouped under this
SSLSessionContext. |
| abstract void |
setSessionTimeout(int seconds)
Sets the timeout limit for
SSLSession objects grouped
under this SSLSessionContext. |
Public Methods
public abstract Enumeration<byte[]> getIds ()
Returns an Enumeration of all session id's grouped under this
SSLSessionContext.
Returns
- an enumeration of all the Session id's
public abstract SSLSession getSession (byte[] sessionId)
Returns the SSLSession bound to the specified session id.
Parameters
| sessionId | the Session identifier |
|---|
Returns
- the
SSLSessionor null if the specified session id does not refer to a valid SSLSession.
Throws
| NullPointerException | if sessionId is null.
|
|---|
public abstract int getSessionCacheSize ()
Returns the size of the cache used for storing
SSLSession objects grouped under this
SSLSessionContext.
Returns
- size of the session cache; zero means there is no size limit.
See Also
public abstract int getSessionTimeout ()
Returns the timeout limit of SSLSession objects grouped
under this SSLSessionContext.
If the timeout limit is set to 't' seconds, a session exceeds the
timeout limit 't' seconds after its creation time.
When the timeout limit is exceeded for a session, the
SSLSession object is invalidated and future connections
cannot resume or rejoin the session.
A check for sessions exceeding the timeout limit is made immediately
whenever the timeout limit is changed for this
SSLSessionContext.
Returns
- the session timeout limit in seconds; zero means there is no limit.
See Also
public abstract void setSessionCacheSize (int size)
Sets the size of the cache used for storing
SSLSession objects grouped under this
SSLSessionContext.
Parameters
| size | the new session cache size limit; zero means there is no limit. |
|---|
Throws
| IllegalArgumentException | if the specified size is < 0. |
|---|
See Also
public abstract void setSessionTimeout (int seconds)
Sets the timeout limit for SSLSession objects grouped
under this SSLSessionContext.
If the timeout limit is set to 't' seconds, a session exceeds the
timeout limit 't' seconds after its creation time.
When the timeout limit is exceeded for a session, the
SSLSession object is invalidated and future connections
cannot resume or rejoin the session.
A check for sessions exceeding the timeout is made immediately whenever
the timeout limit is changed for this SSLSessionContext.
Parameters
| seconds | the new session timeout limit in seconds; zero means there is no limit. |
|---|
Throws
| IllegalArgumentException | if the timeout specified is < 0. |
|---|