Class AbstractEventStream

java.lang.Object
com.suse.salt.netapi.event.AbstractEventStream
All Implemented Interfaces:
EventStream, AutoCloseable
Direct Known Subclasses:
WebSocketEventStream

public abstract class AbstractEventStream extends Object implements EventStream
Implements basic listener bookkeeping for EventStream.
  • Field Details

    • listeners

      private final List<EventListener> listeners
      Listeners that are notified of a new events.
  • Constructor Details

    • AbstractEventStream

      public AbstractEventStream()
  • Method Details

    • addEventListener

      public void addEventListener(EventListener listener)
      Adds a listener.
      Specified by:
      addEventListener in interface EventStream
      Parameters:
      listener - Reference to the class that implements EventListener.
    • removeEventListener

      public void removeEventListener(EventListener listener)
      Removes a listener.
      Specified by:
      removeEventListener in interface EventStream
      Parameters:
      listener - Reference to the class that implements EventListener.
    • getListenerCount

      public int getListenerCount()
      Helper method that returns the current number of subscribed listeners.
      Specified by:
      getListenerCount in interface EventStream
      Returns:
      The current number listeners.
    • notifyListeners

      protected void notifyListeners(Event event)
      Notifies all listeners of an event
      Parameters:
      event - the event
    • clearListeners

      protected void clearListeners(int code, String phrase)
      Removes all listeners.
      Parameters:
      code - an integer code to represent the reason for closing
      phrase - a String representation of code