Top Description Inners Fields Constructors Methods
io.netty.handler.ssl

pack-priv abstract Class ExtendedOpenSslSession

extends ExtendedSSLSession
implements OpenSslSession
Class Inheritance
All Implemented Interfaces
io.netty.handler.ssl.OpenSslSession, javax.net.ssl.SSLSession
Annotations
@SuppressJava6Requirement
reason:Usage guarded by java version check
Imports
io.netty.util.internal.EmptyArrays, .SuppressJava6Requirement, javax.net.ssl.ExtendedSSLSession, .SSLException, .SSLPeerUnverifiedException, .SSLSessionBindingEvent, .SSLSessionBindingListener, javax.security.cert.X509Certificate, java.security.Principal, java.security.cert.Certificate, java.util.Collections, .List, .Map

Delegates all operations to a wrapped OpenSslSession except the methods defined by ExtendedSSLSession itself.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private class

Field Summary

Modifier and TypeField and Description
private static final String[]
private final OpenSslSession

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public boolean
equals(Object
the reference object with which to compare.
o
)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.
public final int
getApplicationBufferSize()

Implements javax.net.ssl.SSLSession.getApplicationBufferSize.

Gets the current size of the largest application data that is expected when using this session.
public final String
getCipherSuite()

Implements javax.net.ssl.SSLSession.getCipherSuite.

Returns the name of the SSL cipher suite which is used for all connections in the session.
public final long
getCreationTime()

Implements javax.net.ssl.SSLSession.getCreationTime.

Returns the time at which this Session representation was created, in milliseconds since midnight, January 1, 1970 UTC.
public final byte[]
getId()

Implements javax.net.ssl.SSLSession.getId.

Returns the identifier assigned to this Session.
public final long
getLastAccessedTime()

Implements javax.net.ssl.SSLSession.getLastAccessedTime.

Returns the last time this Session representation was accessed by the session level infrastructure, in milliseconds since midnight, January 1, 1970 UTC.
public final Certificate[]
getLocalCertificates()

Implements javax.net.ssl.SSLSession.getLocalCertificates.

Returns the certificate(s) that were sent to the peer during handshaking.
public final Principal
getLocalPrincipal()

Implements javax.net.ssl.SSLSession.getLocalPrincipal.

Returns the principal that was sent to the peer during handshaking.
public final String[]
getLocalSupportedSignatureAlgorithms()

Implements abstract javax.net.ssl.ExtendedSSLSession.getLocalSupportedSignatureAlgorithms.

Obtains an array of supported signature algorithms that the local side is willing to use.
public final int
getPacketBufferSize()

Implements javax.net.ssl.SSLSession.getPacketBufferSize.

Gets the current size of the largest SSL/TLS/DTLS packet that is expected when using this session.
public final X509Certificate[]
getPeerCertificateChain()

Overrides default javax.net.ssl.SSLSession.getPeerCertificateChain.

Deprecated as a consequence of X509Certificate being deprecated.
Returns the identity of the peer which was identified as part of defining the session.
public final Certificate[]
getPeerCertificates()

Implements javax.net.ssl.SSLSession.getPeerCertificates.

Returns the identity of the peer which was established as part of defining the session.
public final String
getPeerHost()

Implements javax.net.ssl.SSLSession.getPeerHost.

Returns the host name of the peer in this session.
public final int
getPeerPort()

Implements javax.net.ssl.SSLSession.getPeerPort.

Returns the port number of the peer in this session.
public final Principal
getPeerPrincipal()

Implements javax.net.ssl.SSLSession.getPeerPrincipal.

Returns the identity of the peer which was established as part of defining the session.
public String[]
getPeerSupportedSignatureAlgorithms()

Implements abstract javax.net.ssl.ExtendedSSLSession.getPeerSupportedSignatureAlgorithms.

Obtains an array of supported signature algorithms that the peer is able to use.
public String
getProtocol()

Implements javax.net.ssl.SSLSession.getProtocol.

Returns the standard name of the protocol used for all connections in the session.
public abstract List<E>
getRequestedServerNames()

Overrides javax.net.ssl.ExtendedSSLSession.getRequestedServerNames.

Obtains a List containing all SNIServerNames of the requested Server Name Indication (SNI) extension.
public final OpenSslSessionContext
public List<byte[]>
getStatusResponses()

Overrides javax.net.ssl.ExtendedSSLSession.getStatusResponses.

Returns a List containing DER-encoded OCSP responses (using the ASN.1 type OCSPResponse defined in RFC 6960) for the client to verify status of the server's certificate during handshaking.
public final Object
getValue(String
the name of the binding to find.
s
)

Implements javax.net.ssl.SSLSession.getValue.

Returns the object bound to the given name in the session's application layer data.
public final String[]
getValueNames()

Implements javax.net.ssl.SSLSession.getValueNames.

Returns an array of the names of all the application layer data objects bound into the Session.
public void
handshakeFinished(byte[] id, String cipher, String protocol, byte[] peerCertificate, byte[][] peerCertificateChain, long creationTime, long timeout)

Implements io.netty.handler.ssl.OpenSslSession.handshakeFinished.

Called once the handshake has completed.
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for this object.
public final void
invalidate()

Implements javax.net.ssl.SSLSession.invalidate.

Invalidates the session.
public final boolean
isValid()

Implements javax.net.ssl.SSLSession.isValid.

Returns whether this session is valid and available for resuming or joining.
public Map<String, Object>
public void
prepareHandshake()

Implements io.netty.handler.ssl.OpenSslSession.prepareHandshake.

Called on a handshake session before being exposed to a javax.net.ssl.TrustManager.
public final void
putValue(String
the name to which the data object will be bound. This may not be null.
name
,
Object
the data object to be bound. This may not be null.
value
)

Implements javax.net.ssl.SSLSession.putValue.

Binds the specified value object into the session's application layer data with the given name.
public final void
removeValue(String
the name of the object to remove visible across different access control contexts
s
)

Implements javax.net.ssl.SSLSession.removeValue.

Removes the object bound to the given name in the session's application layer data.
public OpenSslSessionId
sessionId()

Implements io.netty.handler.ssl.OpenSslSession.sessionId.

Return the OpenSslSessionId that can be used to identify this session.
public void
setLastAccessedTime(long
the time
time
)

Implements io.netty.handler.ssl.OpenSslSession.setLastAccessedTime.

Set the last access time which will be returned by getLastAccessedTime().
public final void
setLocalCertificate(Certificate[] localCertificate)

Implements io.netty.handler.ssl.OpenSslSession.setLocalCertificate.

Set the local certificate chain that is used.
public void
setSessionDetails(long
the time at which the session was created.
creationTime
,
long
the time at which the session was last accessed via the session infrastructure (cache).
lastAccessedTime
,
OpenSslSessionId id, Map<String, Object>
the key value store. See keyValueStorage().
keyValueStorage
)

Implements io.netty.handler.ssl.OpenSslSession.setSessionDetails.

Set the details for the session which might come from a cache.
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.
public final void
tryExpandApplicationBufferSize(int
The packet size which exceeds the current getApplicationBufferSize().
packetLengthDataOnly
)

Implements io.netty.handler.ssl.OpenSslSession.tryExpandApplicationBufferSize.

Expand (or increase) the value returned by getApplicationBufferSize() if necessary.

Field Detail

LOCAL_SUPPORTED_SIGNATURE_ALGORITHMSback to summary
private static final String[] LOCAL_SUPPORTED_SIGNATURE_ALGORITHMS
wrappedback to summary
private final OpenSslSession wrapped

Constructor Detail

ExtendedOpenSslSessionback to summary
pack-priv ExtendedOpenSslSession(OpenSslSession wrapped)

Method Detail

equalsback to summary
public boolean equals(Object o)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
o:Object

the reference object with which to compare.

Returns:boolean

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
getApplicationBufferSizeback to summary
public final int getApplicationBufferSize()

Implements javax.net.ssl.SSLSession.getApplicationBufferSize.

Doc from javax.net.ssl.SSLSession.getApplicationBufferSize.

Gets the current size of the largest application data that is expected when using this session.

SSLEngine application data buffers must be large enough to hold the application data from any inbound network application data packet received. Typically, outbound application data buffers can be of any size.

Returns:int

the current maximum expected application packet size

Annotations
@Override
getCipherSuiteback to summary
public final String getCipherSuite()

Implements javax.net.ssl.SSLSession.getCipherSuite.

Doc from javax.net.ssl.SSLSession.getCipherSuite.

Returns the name of the SSL cipher suite which is used for all connections in the session.

This defines the level of protection provided to the data sent on the connection, including the kind of encryption used and most aspects of how authentication is done.

Returns:String

the name of the session's cipher suite

Annotations
@Override
getCreationTimeback to summary
public final long getCreationTime()

Implements javax.net.ssl.SSLSession.getCreationTime.

Doc from javax.net.ssl.SSLSession.getCreationTime.

Returns the time at which this Session representation was created, in milliseconds since midnight, January 1, 1970 UTC.

Returns:long

the time this Session was created

Annotations
@Override
getIdback to summary
public final byte[] getId()

Implements javax.net.ssl.SSLSession.getId.

Doc from javax.net.ssl.SSLSession.getId.

Returns the identifier assigned to this Session.

Returns:byte[]

the Session identifier

Annotations
@Override
getLastAccessedTimeback to summary
public final long getLastAccessedTime()

Implements javax.net.ssl.SSLSession.getLastAccessedTime.

Doc from javax.net.ssl.SSLSession.getLastAccessedTime.

Returns the last time this Session representation was accessed by the session level infrastructure, in milliseconds since midnight, January 1, 1970 UTC.

Access indicates a new connection being established using session data. Application level operations, such as getting or setting a value associated with the session, are not reflected in this access time.

This information is particularly useful in session management policies. For example, a session manager thread could leave all sessions in a given context which haven't been used in a long time; or, the sessions might be sorted according to age to optimize some task.

Returns:long

the last time this Session was accessed

Annotations
@Override
getLocalCertificatesback to summary
public final Certificate[] getLocalCertificates()

Implements javax.net.ssl.SSLSession.getLocalCertificates.

Doc from javax.net.ssl.SSLSession.getLocalCertificates.

Returns the certificate(s) that were sent to the peer during handshaking.

Note

This method is useful only when using certificate-based cipher suites.

When multiple certificates are available for use in a handshake, the implementation chooses what it considers the "best" certificate chain available, and transmits that to the other side. This method allows the caller to know which certificate chain was actually used.

Returns:Certificate[]

an ordered array of certificates, with the local certificate first followed by any certificate authorities. If no certificates were sent, then null is returned.

Annotations
@Override
getLocalPrincipalback to summary
public final Principal getLocalPrincipal()

Implements javax.net.ssl.SSLSession.getLocalPrincipal.

Doc from javax.net.ssl.SSLSession.getLocalPrincipal.

Returns the principal that was sent to the peer during handshaking.

Returns:Principal

the principal sent to the peer. Returns an X500Principal of the end-entity certificate for X509-based cipher suites, and KerberosPrincipal for Kerberos cipher suites. If no principal was sent, then null is returned.

Annotations
@Override
getLocalSupportedSignatureAlgorithmsback to summary
public final String[] getLocalSupportedSignatureAlgorithms()

Implements abstract javax.net.ssl.ExtendedSSLSession.getLocalSupportedSignatureAlgorithms.

Doc from javax.net.ssl.ExtendedSSLSession.getLocalSupportedSignatureAlgorithms.

Obtains an array of supported signature algorithms that the local side is willing to use.

Note

this method is used to indicate to the peer which signature algorithms may be used for digital signatures in TLS/DTLS 1.2. It is not meaningful for TLS/DTLS versions prior to 1.2.

The signature algorithm name must be a standard Java Security name (such as "SHA1withRSA", "SHA256withECDSA", and so on). See the Java Security Standard Algorithm Names document for information about standard algorithm names.

Note

the local supported signature algorithms should conform to the algorithm constraints specified by getAlgorithmConstraints() method in SSLParameters.

Returns:String[]

An array of supported signature algorithms, in descending order of preference. The return value is an empty array if no signature algorithm is supported.

Annotations
@Override
getPacketBufferSizeback to summary
public final int getPacketBufferSize()

Implements javax.net.ssl.SSLSession.getPacketBufferSize.

Doc from javax.net.ssl.SSLSession.getPacketBufferSize.

Gets the current size of the largest SSL/TLS/DTLS packet that is expected when using this session.

An SSLEngine using this session may generate SSL/TLS/DTLS packets of any size up to and including the value returned by this method. All SSLEngine network buffers should be sized at least this large to avoid insufficient space problems when performing wrap and unwrap calls.

Returns:int

the current maximum expected network packet size

Annotations
@Override
getPeerCertificateChainback to summary
public final X509Certificate[] getPeerCertificateChain() throws SSLPeerUnverifiedException

Overrides default javax.net.ssl.SSLSession.getPeerCertificateChain.

Doc from javax.net.ssl.SSLSession.getPeerCertificateChain.

Deprecated

as a consequence of X509Certificate being deprecated. See corresponding docs for further information.

Returns the identity of the peer which was identified as part of defining the session.

Note

This method can be used only when using certificate-based cipher suites; using it with non-certificate-based cipher suites, such as Kerberos, will throw an SSLPeerUnverifiedException.

Note

The returned value may not be a valid certificate chain and should not be relied on for trust decisions.

Note

this method exists for compatibility with previous releases. New applications should use getPeerCertificates instead.

Returns:X509Certificate[]

an ordered array of peer X.509 certificates, with the peer's own certificate first followed by any certificate authorities. (The certificates are in the original JSSE certificate javax.security.cert.X509Certificate format.)

Annotations
@Override
Exceptions
SSLPeerUnverifiedException:
if the peer's identity has not been verified.
getPeerCertificatesback to summary
public final Certificate[] getPeerCertificates() throws SSLPeerUnverifiedException

Implements javax.net.ssl.SSLSession.getPeerCertificates.

Doc from javax.net.ssl.SSLSession.getPeerCertificates.

Returns the identity of the peer which was established as part of defining the session.

Note

This method can be used only when using certificate-based cipher suites; using it with non-certificate-based cipher suites, such as Kerberos, will throw an SSLPeerUnverifiedException.

Note

The returned value may not be a valid certificate chain and should not be relied on for trust decisions.

Returns:Certificate[]

an ordered array of peer certificates, with the peer's own certificate first followed by any certificate authorities.

Annotations
@Override
Exceptions
SSLPeerUnverifiedException:
if the peer's identity has not been verified
getPeerHostback to summary
public final String getPeerHost()

Implements javax.net.ssl.SSLSession.getPeerHost.

Doc from javax.net.ssl.SSLSession.getPeerHost.

Returns the host name of the peer in this session.

For the server, this is the client's host; and for the client, it is the server's host. The name may not be a fully qualified host name or even a host name at all as it may represent a string encoding of the peer's network address. If such a name is desired, it might be resolved through a name service based on the value returned by this method.

This value is not authenticated and should not be relied upon. It is mainly used as a hint for SSLSession caching strategies.

Returns:String

the host name of the peer host, or null if no information is available.

Annotations
@Override
getPeerPortback to summary
public final int getPeerPort()

Implements javax.net.ssl.SSLSession.getPeerPort.

Doc from javax.net.ssl.SSLSession.getPeerPort.

Returns the port number of the peer in this session.

For the server, this is the client's port number; and for the client, it is the server's port number.

This value is not authenticated and should not be relied upon. It is mainly used as a hint for SSLSession caching strategies.

Returns:int

the port number of the peer host, or -1 if no information is available.

Annotations
@Override
getPeerPrincipalback to summary
public final Principal getPeerPrincipal() throws SSLPeerUnverifiedException

Implements javax.net.ssl.SSLSession.getPeerPrincipal.

Doc from javax.net.ssl.SSLSession.getPeerPrincipal.

Returns the identity of the peer which was established as part of defining the session.

Returns:Principal

the peer's principal. Returns an X500Principal of the end-entity certificate for X509-based cipher suites, and KerberosPrincipal for Kerberos cipher suites.

Annotations
@Override
Exceptions
SSLPeerUnverifiedException:
if the peer's identity has not been verified
getPeerSupportedSignatureAlgorithmsback to summary
public String[] getPeerSupportedSignatureAlgorithms()

Implements abstract javax.net.ssl.ExtendedSSLSession.getPeerSupportedSignatureAlgorithms.

Doc from javax.net.ssl.ExtendedSSLSession.getPeerSupportedSignatureAlgorithms.

Obtains an array of supported signature algorithms that the peer is able to use.

Note

this method is used to indicate to the local side which signature algorithms may be used for digital signatures in TLS/DTLS 1.2. It is not meaningful for TLS/DTLS versions prior to 1.2.

The signature algorithm name must be a standard Java Security name (such as "SHA1withRSA", "SHA256withECDSA", and so on). See the Java Security Standard Algorithm Names document for information about standard algorithm names.

Returns:String[]

An array of supported signature algorithms, in descending order of preference. The return value is an empty array if the peer has not sent the supported signature algorithms.

Annotations
@Override
getProtocolback to summary
public String getProtocol()

Implements javax.net.ssl.SSLSession.getProtocol.

Doc from javax.net.ssl.SSLSession.getProtocol.

Returns the standard name of the protocol used for all connections in the session.

This defines the protocol used in the connection.

Returns:String

the standard name of the protocol used for all connections in the session.

Annotations
@Override
getRequestedServerNamesback to summary
public abstract List<E> getRequestedServerNames()

Overrides javax.net.ssl.ExtendedSSLSession.getRequestedServerNames.

Doc from javax.net.ssl.ExtendedSSLSession.getRequestedServerNames.

Obtains a List containing all SNIServerNames of the requested Server Name Indication (SNI) extension.

In server mode, unless the return List is empty, the server should use the requested server names to guide its selection of an appropriate authentication certificate, and/or other aspects of security policy.

In client mode, unless the return List is empty, the client should use the requested server names to guide its endpoint identification of the peer's identity, and/or other aspects of security policy.

Returns:List<E>

a non-null immutable list of SNIServerNames of the requested server name indications. The returned list may be empty if no server name indications were requested.

Annotations
@Override
@SuppressWarnings:unchecked, rawtypes
getSessionContextback to summary
public final OpenSslSessionContext getSessionContext()

Implements io.netty.handler.ssl.OpenSslSession.getSessionContext, javax.net.ssl.SSLSession.getSessionContext.

Doc from javax.net.ssl.SSLSession.getSessionContext.

Returns the context in which this session is bound.

This context may be unavailable in some environments, in which case this method returns null.

If the context is available and there is a security manager installed, the caller may require permission to access it or a security exception may be thrown. In a Java environment, the security manager's checkPermission method is called with a SSLPermission("getSSLSessionContext") permission.

Returns:OpenSslSessionContext

the session context used for this session, or null if the context is unavailable.

Annotations
@Override
getStatusResponsesback to summary
public List<byte[]> getStatusResponses()

Overrides javax.net.ssl.ExtendedSSLSession.getStatusResponses.

Doc from javax.net.ssl.ExtendedSSLSession.getStatusResponses.

Returns a List containing DER-encoded OCSP responses (using the ASN.1 type OCSPResponse defined in RFC 6960) for the client to verify status of the server's certificate during handshaking.

This method only applies to certificate-based server authentication. An X509ExtendedTrustManager will use the returned value for server certificate validation.

Returns:List<byte[]>

a non-null unmodifiable list of byte arrays, each entry containing a DER-encoded OCSP response (using the ASN.1 type OCSPResponse defined in RFC 6960). The order of the responses must match the order of the certificates presented by the server in its Certificate message (See SSLSession#getLocalCertificates() for server mode, and SSLSession#getPeerCertificates() for client mode). It is possible that fewer response entries may be returned than the number of presented certificates. If an entry in the list is a zero-length byte array, it should be treated by the caller as if the OCSP entry for the corresponding certificate is missing. The returned list may be empty if no OCSP responses were presented during handshaking or if OCSP stapling is not supported by either endpoint for this handshake.

getValueback to summary
public final Object getValue(String s)

Implements javax.net.ssl.SSLSession.getValue.

Doc from javax.net.ssl.SSLSession.getValue.

Returns the object bound to the given name in the session's application layer data. Returns null if there is no such binding.

For security reasons, the same named values may not be visible across different access control contexts.

Parameters
s:String

the name of the binding to find.

Returns:Object

the value bound to that name, or null if the binding does not exist.

Annotations
@Override
getValueNamesback to summary
public final String[] getValueNames()

Implements javax.net.ssl.SSLSession.getValueNames.

Doc from javax.net.ssl.SSLSession.getValueNames.

Returns an array of the names of all the application layer data objects bound into the Session.

For security reasons, the same named values may not be visible across different access control contexts.

Returns:String[]

a non-null (possibly empty) array of names of the objects bound to this Session.

Annotations
@Override
handshakeFinishedback to summary
public void handshakeFinished(byte[] id, String cipher, String protocol, byte[] peerCertificate, byte[][] peerCertificateChain, long creationTime, long timeout) throws SSLException

Implements io.netty.handler.ssl.OpenSslSession.handshakeFinished.

Doc from io.netty.handler.ssl.OpenSslSession.handshakeFinished.

Called once the handshake has completed.

Annotations
@Override
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object

Annotations
@Override
invalidateback to summary
public final void invalidate()

Implements javax.net.ssl.SSLSession.invalidate.

Doc from javax.net.ssl.SSLSession.invalidate.

Invalidates the session.

Future connections will not be able to resume or join this session. However, any existing connection using this session can continue to use the session until the connection is closed.

Annotations
@Override
isValidback to summary
public final boolean isValid()

Implements javax.net.ssl.SSLSession.isValid.

Doc from javax.net.ssl.SSLSession.isValid.

Returns whether this session is valid and available for resuming or joining.

Returns:boolean

true if this session may be rejoined.

Annotations
@Override
keyValueStorageback to summary
public Map<String, Object> keyValueStorage()

Implements io.netty.handler.ssl.OpenSslSession.keyValueStorage.

Doc from io.netty.handler.ssl.OpenSslSession.keyValueStorage.

Return the underlying Map that is used by the following methods:

The Map must be thread-safe!
Returns:Map<String, Object>

storage

Annotations
@Override
prepareHandshakeback to summary
public void prepareHandshake()

Implements io.netty.handler.ssl.OpenSslSession.prepareHandshake.

Doc from io.netty.handler.ssl.OpenSslSession.prepareHandshake.

Called on a handshake session before being exposed to a javax.net.ssl.TrustManager. Session data must be cleared by this call.

Annotations
@Override
putValueback to summary
public final void putValue(String name, Object value)

Implements javax.net.ssl.SSLSession.putValue.

Doc from javax.net.ssl.SSLSession.putValue.

Binds the specified value object into the session's application layer data with the given name.

Any existing binding using the same name is replaced. If the new (or existing) value implements the SSLSessionBindingListener interface, the object represented by value is notified appropriately.

For security reasons, the same named values may not be visible across different access control contexts.

Parameters
name:String

the name to which the data object will be bound. This may not be null.

value:Object

the data object to be bound. This may not be null.

Annotations
@Override
removeValueback to summary
public final void removeValue(String s)

Implements javax.net.ssl.SSLSession.removeValue.

Doc from javax.net.ssl.SSLSession.removeValue.

Removes the object bound to the given name in the session's application layer data. Does nothing if there is no object bound to the given name. If the bound existing object implements the SSLSessionBindingListener interface, it is notified appropriately.

For security reasons, the same named values may not be visible across different access control contexts.

Parameters
s:String

the name of the object to remove visible across different access control contexts

Annotations
@Override
sessionIdback to summary
public OpenSslSessionId sessionId()

Implements io.netty.handler.ssl.OpenSslSession.sessionId.

Doc from io.netty.handler.ssl.OpenSslSession.sessionId.

Return the OpenSslSessionId that can be used to identify this session.

Annotations
@Override
setLastAccessedTimeback to summary
public void setLastAccessedTime(long time)

Implements io.netty.handler.ssl.OpenSslSession.setLastAccessedTime.

Doc from io.netty.handler.ssl.OpenSslSession.setLastAccessedTime.

Set the last access time which will be returned by getLastAccessedTime().

Parameters
time:long

the time

Annotations
@Override
setLocalCertificateback to summary
public final void setLocalCertificate(Certificate[] localCertificate)

Implements io.netty.handler.ssl.OpenSslSession.setLocalCertificate.

Doc from io.netty.handler.ssl.OpenSslSession.setLocalCertificate.

Set the local certificate chain that is used. It is not expected that this array will be changed at all and so its ok to not copy the array.

Annotations
@Override
setSessionDetailsback to summary
public void setSessionDetails(long creationTime, long lastAccessedTime, OpenSslSessionId id, Map<String, Object> keyValueStorage)

Implements io.netty.handler.ssl.OpenSslSession.setSessionDetails.

Doc from io.netty.handler.ssl.OpenSslSession.setSessionDetails.

Set the details for the session which might come from a cache.

Parameters
creationTime:long

the time at which the session was created.

lastAccessedTime:long

the time at which the session was last accessed via the session infrastructure (cache).

id:OpenSslSessionId

the OpenSslSessionId

keyValueStorage:Map<String, Object>

the key value store. See keyValueStorage().

Annotations
@Override
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object.

Returns:String

a string representation of the object

Annotations
@Override
tryExpandApplicationBufferSizeback to summary
public final void tryExpandApplicationBufferSize(int packetLengthDataOnly)

Implements io.netty.handler.ssl.OpenSslSession.tryExpandApplicationBufferSize.

Doc from io.netty.handler.ssl.OpenSslSession.tryExpandApplicationBufferSize.

Expand (or increase) the value returned by getApplicationBufferSize() if necessary.

This is only called in a synchronized block, so no need to use atomic operations.

Parameters
packetLengthDataOnly:int

The packet size which exceeds the current getApplicationBufferSize().

Annotations
@Override
io.netty.handler.ssl back to summary

private final Class ExtendedOpenSslSession.SSLSessionBindingListenerDecorator

extends Object
implements SSLSessionBindingListener
Class Inheritance
  • java.lang.Object
  • io.netty.handler.ssl.ExtendedOpenSslSession.SSLSessionBindingListenerDecorator
All Implemented Interfaces
javax.net.ssl.SSLSessionBindingListener, java.util.EventListener

Field Summary

Modifier and TypeField and Description
pack-priv final SSLSessionBindingListener

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
valueBound(SSLSessionBindingEvent
the event identifying the SSLSession into which the listener is being bound.
event
)

Implements javax.net.ssl.SSLSessionBindingListener.valueBound.

This is called to notify the listener that it is being bound into an SSLSession.
public void
valueUnbound(SSLSessionBindingEvent
the event identifying the SSLSession from which the listener is being unbound.
event
)

Implements javax.net.ssl.SSLSessionBindingListener.valueUnbound.

This is called to notify the listener that it is being unbound from a SSLSession.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

delegateback to summary
pack-priv final SSLSessionBindingListener delegate

Constructor Detail

SSLSessionBindingListenerDecoratorback to summary
pack-priv SSLSessionBindingListenerDecorator(SSLSessionBindingListener delegate)

Method Detail

valueBoundback to summary
public void valueBound(SSLSessionBindingEvent event)

Implements javax.net.ssl.SSLSessionBindingListener.valueBound.

Doc from javax.net.ssl.SSLSessionBindingListener.valueBound.

This is called to notify the listener that it is being bound into an SSLSession.

Parameters
event:SSLSessionBindingEvent

the event identifying the SSLSession into which the listener is being bound.

Annotations
@Override
valueUnboundback to summary
public void valueUnbound(SSLSessionBindingEvent event)

Implements javax.net.ssl.SSLSessionBindingListener.valueUnbound.

Doc from javax.net.ssl.SSLSessionBindingListener.valueUnbound.

This is called to notify the listener that it is being unbound from a SSLSession.

Parameters
event:SSLSessionBindingEvent

the event identifying the SSLSession from which the listener is being unbound.

Annotations
@Override