Package devs.beer.nativepackets.api
Interface PacketListenerRegistry
public interface PacketListenerRegistry
Public listener registration and owner-cleanup boundary.
-
Method Summary
Modifier and TypeMethodDescriptiondefault <E extends PacketEvent>
PacketListenerHandleregister(Object owner, PacketSelector selector, ListenerPriority priority, boolean receiveCancelled, ListenerFailurePolicy failurePolicy, PacketListener<E> listener) Registers one listener with explicit cancellation visibility.register(Object owner, PacketSelector selector, ListenerPriority priority, ListenerFailurePolicy failurePolicy, PacketListener<E> listener) Registers one packet listener.default <V extends PacketView>
PacketListenerHandleregister(Object owner, PacketType<V> type, ListenerPriority priority, boolean receiveCancelled, TypedPacketListener<V> listener) Registers an exact typed listener with explicit priority and cancellation visibility.default <V extends PacketView>
PacketListenerHandleregister(Object owner, PacketType<V> type, ListenerPriority priority, TypedPacketListener<V> listener) Registers an exact typed listener with explicit priority and normal defaults.default <V extends PacketView>
PacketListenerHandleregister(Object owner, PacketType<V> type, TypedPacketListener<V> listener) Registers an exact typed packet listener with normal priority and safe pass-original failure handling.voidunregisterOwner(Object owner) Unregisters every listener owned by the identical object.
-
Method Details
-
register
default <V extends PacketView> PacketListenerHandle register(Object owner, PacketType<V> type, TypedPacketListener<V> listener) Registers an exact typed packet listener with normal priority and safe pass-original failure handling. The adapter lambda is created once at registration; dispatch creates no listener wrapper. -
register
default <V extends PacketView> PacketListenerHandle register(Object owner, PacketType<V> type, ListenerPriority priority, TypedPacketListener<V> listener) Registers an exact typed listener with explicit priority and normal defaults. -
register
default <V extends PacketView> PacketListenerHandle register(Object owner, PacketType<V> type, ListenerPriority priority, boolean receiveCancelled, TypedPacketListener<V> listener) Registers an exact typed listener with explicit priority and cancellation visibility.- Parameters:
receiveCancelled- whether to invoke this listener when an earlier listener cancelled the event
-
register
<E> PacketListenerHandle register(Object owner, PacketSelector selector, ListenerPriority priority, ListenerFailurePolicy failurePolicy, PacketListener<E> listener) Registers one packet listener.- Type Parameters:
E- event type accepted by the listener- Parameters:
owner- lifecycle owner, normally the consuming pluginselector- packet selectorpriority- deterministic listener priorityfailurePolicy- behavior when the listener throwslistener- callback- Returns:
- idempotent registration handle
-
register
default <E extends PacketEvent> PacketListenerHandle register(Object owner, PacketSelector selector, ListenerPriority priority, boolean receiveCancelled, ListenerFailurePolicy failurePolicy, PacketListener<E> listener) Registers one listener with explicit cancellation visibility.The standard runtime stores this flag in its immutable compiled listener entry. The default implementation preserves compatibility for custom registries by creating the filtering callback once at registration.
- Parameters:
receiveCancelled- whether to invoke this listener when an earlier listener cancelled the event
-
unregisterOwner
Unregisters every listener owned by the identical object.- Parameters:
owner- registration owner
-