Interface Connection
- All Superinterfaces:
AutoCloseable, Closeable
- All Known Implementing Classes:
AbstractConnection, AbstractMetaDataConnection, ALPNClientConnection, ALPNServerConnection, ClientQuicConnection, ConnectHandler.DownstreamConnection, ConnectHandler.UpstreamConnection, DecoderStreamConnection, EncoderStreamConnection, HTTP2Connection, HTTP3StreamConnection, InstructionStreamConnection, NegotiatingClientConnection, NegotiatingServerConnection, ProxyProtocolClientConnectionFactory.ProxyProtocolConnection, QuicConnection, ServerDocs.JSONHTTPConnection, ServerQuicConnection, SslConnection, UnidirectionalStreamConnection, WebSocketConnection
A Connection is associated to an EndPoint so that I/O events
happening on the EndPoint can be processed by the Connection.
A typical implementation of Connection overrides onOpen() to
set read interest on the EndPoint,
and when the EndPoint signals read readyness, this Connection can
read bytes from the network and interpret them.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceA Listener for connection events.static interfaceConnectionimplementations implement this interface when they can upgrade from the protocol they speak (for example HTTP/1.1) to a different protocol (e.g.static interfaceConnectionimplementations implement this interface when they can be upgraded to the protocol they speak (e.g. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddEventListener(EventListener listener) Adds a listener of connection events.voidclose()Performs a logical close of this connection.longlonglonglonglongvoidCallback method invoked when this connection is closed.booleanonIdleExpired(TimeoutException timeoutException) Callback method invoked upon an idle timeout event.voidonOpen()Callback method invoked when this connection is opened.voidremoveEventListener(EventListener listener) Removes a listener of connection events.
-
Method Details
-
addEventListener
Adds a listener of connection events.
- Parameters:
listener- the listener to add
-
removeEventListener
Removes a listener of connection events.
- Parameters:
listener- the listener to remove
-
onOpen
void onOpen()Callback method invoked when this connection is opened.
Creators of the connection implementation are responsible for calling this method.
-
onClose
Callback method invoked when this connection is closed.
Creators of the connection implementation are responsible for calling this method.
- Parameters:
cause- The cause of the close or null for a normal close
-
getEndPoint
-
close
void close()Performs a logical close of this connection.
For simple connections, this may just mean to delegate the close to the associated
EndPointbut, for example, SSL connections should write the SSL close message before closing the associatedEndPoint.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
onIdleExpired
Callback method invoked upon an idle timeout event.
Implementations of this method may return true to indicate that the idle timeout handling should proceed normally, typically failing the EndPoint and causing it to be closed.
When false is returned, the handling of the idle timeout event is halted immediately and the EndPoint left in the state it was before the idle timeout event.
- Returns:
- true to let the EndPoint handle the idle timeout, false to tell the EndPoint to halt the handling of the idle timeout.
-
getMessagesIn
long getMessagesIn() -
getMessagesOut
long getMessagesOut() -
getBytesIn
long getBytesIn() -
getBytesOut
long getBytesOut() -
getCreatedTimeStamp
long getCreatedTimeStamp()
-