Interface PacketListenerRegistry


public interface PacketListenerRegistry
Public listener registration and owner-cleanup boundary.
  • 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 plugin
      selector - packet selector
      priority - deterministic listener priority
      failurePolicy - behavior when the listener throws
      listener - 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

      void unregisterOwner(Object owner)
      Unregisters every listener owned by the identical object.
      Parameters:
      owner - registration owner