Interface ProtocolEvent

All Superinterfaces:
BabelEvent
All Known Implementing Classes:
AskNeighbourSet, BabelNodeProbe, BroadcastDeliverEvent, BroadcastRequest, NeighbourDown, NeighbourSet, NeighbourUp, SignedMessageIn, SignedMessageOutFailed, SignedMessageOutSuccess

public non-sealed interface ProtocolEvent extends BabelEvent
Marker interface for user-defined, application-level events exchanged between protocols.

Implement this interface to create custom events such as timers, inter-protocol notifications, or broadcast requests. Protocols register interest in specific ProtocolEvent subtypes by annotating handler methods with @UponBabelEvent.

This interface is non-sealed so that application code may freely extend the event hierarchy with any number of concrete event types.