Record Class KeepAliveMessage
java.lang.Object
java.lang.Record
pt.unl.fct.di.novasys.babel2.channels.messages.KeepAliveMessage
- All Implemented Interfaces:
BabelMessage
Singleton message sent periodically over QUIC connections to prevent the underlying QUIC
session from timing out due to inactivity.
The QUICHandshakeHandler installs a
Netty IdleStateHandler on each QUIC channel after a successful handshake. When 20
seconds of write-idle time pass without any application message, it calls
QUICBabelChannel.keepAlivePing(BabelNode) which sends
this message. The receiving side discards it silently via
QUICKeepAliveHandler.
The message is assigned the reserved ID -1 and carries no payload. Use the shared
INSTANCE constant rather than constructing new instances.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final KeepAliveMessageShared singleton instance; always use this instead of creating new objects.static final intMagic signal value used to identify this message type on the wire. -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
INSTANCE
Shared singleton instance; always use this instead of creating new objects. -
KEEP_ALIVE_SIGNAL
public static final int KEEP_ALIVE_SIGNALMagic signal value used to identify this message type on the wire. Equals the Unicode code point for U+1F44C (OK hand sign).- See Also:
-
-
Constructor Details
-
KeepAliveMessage
public KeepAliveMessage()Creates an instance of aKeepAliveMessagerecord class.
-
-
Method Details
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal.
-