Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.net.ssl
Interface SSLSessionContext

public interface SSLSessionContext

A `SSLSessionContext` represents a set of `SSLSession`s 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.

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)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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.

Copyright 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.