public interface

SSLSession

javax.net.ssl.SSLSession

Class Overview

The interface representing an SSL session.

Summary

Public Methods
abstract int getApplicationBufferSize()
Returns the maximum size that an application buffer can be for this session.
abstract String getCipherSuite()
Returns the name of the cipher suite used in this session.
abstract long getCreationTime()
Returns the time this session was created, in milliseconds since midnight January 1st 1970 UTC.
abstract byte[] getId()
Returns this sessions identifier.
abstract long getLastAccessedTime()
Returns the time this session was last accessed, in milliseconds since midnight January 1st 1970 UTC.
abstract Certificate[] getLocalCertificates()
Returns the list of certificates that were used to identify the local side to the peer during the handshake.
abstract Principal getLocalPrincipal()
Returns the principal used to identify the local side to the peer during the handshake.
abstract int getPacketBufferSize()
Returns the maximum size that a network buffer can be for this session.
abstract X509Certificate[] getPeerCertificateChain()
Returns the list of certificates the peer used to identify itself during the handshake.
abstract Certificate[] getPeerCertificates()
Returns the list of certificates the peer used to identify itself during the handshake.
abstract String getPeerHost()
Returns the host name of the peer of this session.
abstract int getPeerPort()
Returns the port number of the peer of this session.
abstract Principal getPeerPrincipal()
Returns the principal identifying the peer during the handshake.
abstract String getProtocol()
Returns the protocol name that is used for all connections in this session.
abstract SSLSessionContext getSessionContext()
Returns the context of this session.
abstract Object getValue(String name)
Returns the object bound to the specified name in this session's application layer data.
abstract String[] getValueNames()
Returns the list of the object names bound to this session's application layer data..
abstract void invalidate()
Invalidates this session.
abstract boolean isValid()
Returns whether this session is valid.
abstract void putValue(String name, Object value)
Binds the specified object under the specified name in this session's application layer data.
abstract void removeValue(String name)
Removes the binding for the specified name in this session's application layer data.

Public Methods

public abstract int getApplicationBufferSize ()

Returns the maximum size that an application buffer can be for this session.

Returns
  • the maximum application buffer size.

public abstract String getCipherSuite ()

Returns the name of the cipher suite used in this session.

Returns
  • the name of the cipher suite used in this session.

public abstract long getCreationTime ()

Returns the time this session was created, in milliseconds since midnight January 1st 1970 UTC.

Returns
  • the time the session was created.

public abstract byte[] getId ()

Returns this sessions identifier.

Returns
  • this sessions identifier.

public abstract long getLastAccessedTime ()

Returns the time this session was last accessed, in milliseconds since midnight January 1st 1970 UTC.

Returns
  • the time this session was last accessed.

public abstract Certificate[] getLocalCertificates ()

Returns the list of certificates that were used to identify the local side to the peer during the handshake.

Returns
  • the list of certificates, ordered from local certificate to CA's certificates.

public abstract Principal getLocalPrincipal ()

Returns the principal used to identify the local side to the peer during the handshake.

Returns
  • the principal used to identify the local side.

public abstract int getPacketBufferSize ()

Returns the maximum size that a network buffer can be for this session.

Returns
  • the maximum network buffer size.

public abstract X509Certificate[] getPeerCertificateChain ()

Returns the list of certificates the peer used to identify itself during the handshake.

Note: this method exists for compatility reasons, use getPeerCertificates() instead.

Returns
  • the list of certificates, ordered from the identity certificate to the CA's certificates
Throws
SSLPeerUnverifiedException if the identity of the peer is not verified.

public abstract Certificate[] getPeerCertificates ()

Returns the list of certificates the peer used to identify itself during the handshake.

Returns
  • the list of certificates, ordered from the identity certificate to the CA's certificates.
Throws
SSLPeerUnverifiedException if the identity of the peer is not verified.

public abstract String getPeerHost ()

Returns the host name of the peer of this session. The host name is not authenticated.

Returns
  • the host name of the peer of this session, or null if no host name is available.

public abstract int getPeerPort ()

Returns the port number of the peer of this session. The port number is not authenticated.

Returns
  • the port number of the peer, of -1 is no port number is available.

public abstract Principal getPeerPrincipal ()

Returns the principal identifying the peer during the handshake.

Returns
  • the principal identifying the peer.
Throws
SSLPeerUnverifiedException if the identity of the peer has not been verified.

public abstract String getProtocol ()

Returns the protocol name that is used for all connections in this session.

Returns
  • the protocol name that is used for all connections in this session.

public abstract SSLSessionContext getSessionContext ()

Returns the context of this session. If a context is available and a security manager is installed, the SSLPermission("getSSLSessionContext" is checked with the security manager.

Returns
  • the context of this session or null if no context is available.

public abstract Object getValue (String name)

Returns the object bound to the specified name in this session's application layer data.

Parameters
name the name of the bound value.
Returns
  • the value bound to the specified name, or null if the specified name does not exist or is not accessible in the current access control context.
Throws
IllegalArgumentException if name is null.

public abstract String[] getValueNames ()

Returns the list of the object names bound to this session's application layer data..

Depending on the current access control context, the list of object names may be different.

Returns
  • the list of the object names bound to this session's application layer data.

public abstract void invalidate ()

Invalidates this session.

No new connections can be created, but any existing connection remains valid until it is closed.

public abstract boolean isValid ()

Returns whether this session is valid.

Returns
  • true if this session is valid, otherwise false.

public abstract void putValue (String name, Object value)

Binds the specified object under the specified name in this session's application layer data.

For bindings (new or existing) implementing the SSLSessionBindingListener interface the object will be notified.

Parameters
name the name to bind the object to.
value the object to bind.
Throws
IllegalArgumentException if either name or value is null.

public abstract void removeValue (String name)

Removes the binding for the specified name in this session's application layer data. If the existing binding implements the SSLSessionBindingListener interface the object will be notified.

Parameters
name the binding to remove.
Throws
IllegalArgumentException if name is null.