JavaTM 2 Platform
Std. Ed. v1.4.0

javax.net.ssl
Interface SSLSessionContext


public interface SSLSessionContext

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:

A session can be retrieved based on its session id, and all session id's in a SSLSessionContext can be listed.

Since:
1.4
See Also:
SSLSession

Method Summary
 Enumeration getIds()
          Returns an Enumeration of all session id's grouped under this SSLSessionContext.
 SSLSession getSession(byte[] sessionId)
          Returns the SSLSession bound to the specified session id.
 int getSessionCacheSize()
          Returns the size of the cache used for storing SSLSession objects grouped under this SSLSessionContext.
 int getSessionTimeout()
          Returns the timeout limit of SSLSession objects grouped under this SSLSessionContext.
 void setSessionCacheSize(int size)
          Sets the size of the cache used for storing SSLSession objects grouped under this SSLSessionContext.
 void setSessionTimeout(int seconds)
          Sets the timeout limit for SSLSession objects grouped under this SSLSessionContext.
 

Method Detail

getSession

public SSLSession getSession(byte[] sessionId)
Returns the SSLSession bound to the specified session id.

Parameters:
sessionId - the Session identifier
Returns:
the SSLSession or null if the specified session id does not refer to a valid SSLSession.

getIds

public Enumeration getIds()
Returns an Enumeration of all session id's grouped under this SSLSessionContext.

Returns:
an enumeration of all the Session id's

setSessionTimeout

public void setSessionTimeout(int seconds)
                       throws IllegalArgumentException
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.
See Also:
getSessionTimeout()

getSessionTimeout

public 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:
setSessionTimeout(int)

setSessionCacheSize

public void setSessionCacheSize(int size)
                         throws IllegalArgumentException
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:
getSessionCacheSize()

getSessionCacheSize

public 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:
setSessionCacheSize(int)

JavaTM 2 Platform
Std. Ed. v1.4.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.