java.lang.Object
javax.net.ssl.SSLEngineResult
An encapsulation of the result state produced by
SSLEngine I/O calls.
A SSLEngine provides a means for establishing
secure communication sessions between two peers. SSLEngine
operations typically consume bytes from an input buffer and produce
bytes in an output buffer. This class provides operational result
values describing the state of the SSLEngine, including
indications of what operations are needed to finish an
ongoing handshake. Lastly, it reports the number of bytes consumed
and produced as a result of this operation.
- Since:
- 1.5
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumAnSSLEngineResultenum describing the current handshaking state of thisSSLEngine.static enumAnSSLEngineResultenum describing the overall result of theSSLEngineoperation. -
Constructor Summary
ConstructorsConstructorDescriptionSSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced) Initializes a new instance of this class.SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber) Initializes a new instance of this class. -
Method Summary
Modifier and TypeMethodDescriptionfinal intReturns the number of bytes consumed from the input buffer.final intReturns the number of bytes written to the output buffer.Gets the handshake status of thisSSLEngineoperation.final SSLEngineResult.StatusGets the return value of thisSSLEngineoperation.final longReturns the sequence number of the produced or consumed SSL/TLS/DTLS record (optional operation).toString()Returns a String representation of this object.
-
Constructor Details
-
SSLEngineResult
public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced) Initializes a new instance of this class.- Parameters:
status- the return value of the operation.handshakeStatus- the current handshaking status.bytesConsumed- the number of bytes consumed from the source ByteBufferbytesProduced- the number of bytes placed into the destination ByteBuffer- Throws:
IllegalArgumentException- if thestatusorhandshakeStatusarguments are null, or ifbytesConsumedorbytesProducedis negative.
-
SSLEngineResult
public SSLEngineResult(SSLEngineResult.Status status, SSLEngineResult.HandshakeStatus handshakeStatus, int bytesConsumed, int bytesProduced, long sequenceNumber) Initializes a new instance of this class.- Parameters:
status- the return value of the operation.handshakeStatus- the current handshaking status.bytesConsumed- the number of bytes consumed from the source ByteBufferbytesProduced- the number of bytes placed into the destination ByteBuffersequenceNumber- the sequence number (unsigned long) of the produced or consumed SSL/TLS/DTLS record, or-1Lif no record produced or consumed- Throws:
IllegalArgumentException- if thestatusorhandshakeStatusarguments are null, or ifbytesConsumedorbytesProducedis negative- Since:
- 9
-
-
Method Details
-
getStatus
Gets the return value of thisSSLEngineoperation.- Returns:
- the return value
-
getHandshakeStatus
Gets the handshake status of thisSSLEngineoperation.- Returns:
- the handshake status
-
bytesConsumed
public final int bytesConsumed()Returns the number of bytes consumed from the input buffer.- Returns:
- the number of bytes consumed.
-
bytesProduced
public final int bytesProduced()Returns the number of bytes written to the output buffer.- Returns:
- the number of bytes produced
-
sequenceNumber
public final long sequenceNumber()Returns the sequence number of the produced or consumed SSL/TLS/DTLS record (optional operation).- Returns:
- the sequence number of the produced or consumed SSL/TLS/DTLS
record; or
-1Lif no record is produced or consumed, or this operation is not supported by the underlying provider - Since:
- 9
- See Also:
-
toString
Returns a String representation of this object.
-