Class AbstractEventContext<E extends @NonNull Event>

java.lang.Object
dev.sympho.bot_utils.event.AbstractEventContext<E>
Type Parameters:
E - The event type.
All Implemented Interfaces:
AccessContext, AccessValidator, EventContext

public abstract class AbstractEventContext<E extends @NonNull Event> extends Object implements EventContext
Convenience base for implementing an event context.

Most leaf interfaces here should be able to be implemented on top of this class without any further overrides as they already have default methods pulling all necessary data from the event.

Since:
1.0
Version:
1.0
  • Constructor Details

    • AbstractEventContext

      protected AbstractEventContext(E event, AccessManager accessManager)
      Creates a new instance.
      Parameters:
      event - The triggering event.
      accessManager - The access manager to use.
  • Method Details

    • event

      public E event()
      Description copied from interface: EventContext
      Retrieves the triggering event.
      Specified by:
      event in interface EventContext
      Returns:
      The event.
    • validator

      public AccessValidator validator()
      Description copied from interface: EventContext
      The access validator used in this context.
      Specified by:
      validator in interface EventContext
      Returns:
      The validator.