Class CmsEventManager


  • public class CmsEventManager
    extends java.lang.Object
    Manager that controls the OpenCms event system. There is only one instance of this event manager class used by the OpenCms runtime. This instance can be obtained by calling OpenCms.getEventManager().

    Events can be used in OpenCms to notify custom event listeners that certain system events have happened. Event listeners have to implement the interface I_CmsEventListener.

    Since:
    7.0.0
    See Also:
    CmsEvent, I_CmsEventListener
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static I_CmsEventListener[] EVENT_LIST
      Required as template for event list generation.
    • Constructor Summary

      Constructors 
      Constructor Description
      CmsEventManager()
      Create a new instance of an OpenCms event manager.
    • Constructor Detail

      • CmsEventManager

        public CmsEventManager()
        Create a new instance of an OpenCms event manager.

    • Method Detail

      • addCmsEventListener

        public void addCmsEventListener​(I_CmsEventListener listener)
        Add an OpenCms event listener that listens to all events.

        Parameters:
        listener - the listener to add
      • addCmsEventListener

        public void addCmsEventListener​(I_CmsEventListener listener,
                                        int[] eventTypes)
        Add an OpenCms event listener.

        Parameters:
        listener - the listener to add
        eventTypes - the events to listen for
      • fireEvent

        public void fireEvent​(CmsEvent event)
        Notify all event listeners that a particular event has occurred.

        Parameters:
        event - the event that is forwarded to all listeners
      • fireEvent

        public void fireEvent​(int type)
        Notify all event listeners that a particular event has occurred without any additional event data.

        Parameters:
        type - event type
      • fireEvent

        public void fireEvent​(int type,
                              java.util.Map<java.lang.String,​java.lang.Object> data)
        Notify all event listeners that a particular event has occurred.

        Parameters:
        type - event type
        data - event data
      • fireEventHandler

        protected void fireEventHandler​(java.util.List<I_CmsEventListener> listeners,
                                        CmsEvent event)
        Fires the specified event to a list of event listeners.

        Parameters:
        listeners - the listeners to fire
        event - the event to fire
      • getEventListeners

        protected java.util.Map<java.lang.Integer,​java.util.List<I_CmsEventListener>> getEventListeners()
        Returns the map of all configured event listeners.

        Returns:
        the map of all configured event listeners
      • initialize

        protected void initialize​(CmsEventManager base)
        Initialize this event manager with all events from the given base event manager.

        Parameters:
        base - the base event manager to initialize this event manager with