Class EventDispatcher

  • All Implemented Interfaces:
    IEventDispatcher

    public class EventDispatcher
    extends java.lang.Object
    implements IEventDispatcher
    IEventDispatcher implementation that forwards Events to registered IEventHandler implementations.
    • Field Detail

      • eventHandlers

        protected java.util.Map<java.lang.String,​java.util.List<IEventHandler>> eventHandlers
    • Constructor Detail

      • EventDispatcher

        public EventDispatcher()
    • Method Detail

      • addEventHandler

        public void addEventHandler​(java.lang.String type,
                                    IEventHandler handler)
        Description copied from interface: IEventDispatcher
        Adds new event handler.
        Specified by:
        addEventHandler in interface IEventDispatcher
        Parameters:
        type - a type of event to be handled
        handler - event handler
      • dispatchEvent

        public void dispatchEvent​(Event event,
                                  boolean delayed)
        Description copied from interface: IEventDispatcher
        Dispatches a delayed event. Sometimes event cannot be handled immediately because event handler has not been set yet. In this case event is placed into event ques of dispatcher and is waiting until handler is assigned.
        Specified by:
        dispatchEvent in interface IEventDispatcher
        Parameters:
        event - the Event to be dispatched
        delayed - flag whether Event delayed or not
      • hasEventHandler

        public boolean hasEventHandler​(java.lang.String type)
        Description copied from interface: IEventDispatcher
        Checks if event dispatcher as an event handler assigned for a certain event type.
        Specified by:
        hasEventHandler in interface IEventDispatcher
        Parameters:
        type - a type of the Event
        Returns:
        true if event dispatcher as an event handler assigned for a certain event type