Interface EventDispatcher

    • Method Detail

      • addEventInterceptor

        <E extends Event<? extends Enum>> void addEventInterceptor​(EventInterceptor<E> interceptor)
        Add an EventInterceptor to this dispatcher to be used to process Events. The EventInterceptor will be analyzed to determine applicability to this dispatcher and an identifier will be generated if not specified via an annotation. The generated identifier is the fully qualified class name.
        Type Parameters:
        E - the Event the interceptor accepts
        Parameters:
        interceptor - the EventInterceptor to add
      • addEventInterceptor

        <E extends Event<? extends Enum>> void addEventInterceptor​(String sIdentifier,
                                                                   EventInterceptor<E> interceptor)
        Add a uniquely identified EventInterceptor to this dispatcher to be used to process Events. The EventInterceptor will be analyzed to determine applicability to this dispatcher.
        Type Parameters:
        E - the Event the interceptor accepts
        Parameters:
        sIdentifier - the unique name of the EventInterceptor to add
        interceptor - the EventInterceptor to add
      • addEventInterceptor

        <T extends Enum<T>,​E extends Event<T>> void addEventInterceptor​(String sIdentifier,
                                                                              EventInterceptor<E> interceptor,
                                                                              Set<T> setTypes,
                                                                              boolean fFirst)
        Add a uniquely identified EventInterceptor to this dispatcher to be used to process Events.
        Type Parameters:
        E - the Event the interceptor accepts
        T - the type of events dispatched by Event EventDispatcher
        Parameters:
        sIdentifier - the unique name of the EventInterceptor to add
        interceptor - the EventInterceptor to add
        setTypes - the Event types the specified interceptor is subscribing to, or null to subscribe to all events
        fFirst - true iff the EventInterceptor should be added to the head of this dispatcher's interceptor chain
      • removeEventInterceptor

        <E extends Event<? extends Enum>> void removeEventInterceptor​(EventInterceptor<E> interceptor)
        Remove an EventInterceptor from this dispatcher.
        Type Parameters:
        E - the Event the interceptor accepts
        Parameters:
        interceptor - the EventInterceptor to be removed from the dispatcher based on identity reference
      • removeEventInterceptor

        <E extends Event<? extends Enum>> void removeEventInterceptor​(String sIdentifier)
        Remove an EventInterceptor from this dispatcher.
        Parameters:
        sIdentifier - the unique name identifying the EventInterceptor to remove
      • getSupportedTypes

        Set<Enum> getSupportedTypes()
        Return the set of Event types this EventDispatcher supports.
        Returns:
        the set of Event types this EventDispatcher supports