Class JmsSysEventListener

java.lang.Object
org.bedework.sysevents.listeners.JmsSysEventListener
All Implemented Interfaces:
Serializable, AutoCloseable, javax.jms.ExceptionListener, javax.jms.MessageListener, JmsDefs, org.bedework.util.logging.Logged
Direct Known Subclasses:
LogListener

public abstract class JmsSysEventListener extends Object implements org.bedework.util.logging.Logged, AutoCloseable, javax.jms.MessageListener, javax.jms.ExceptionListener, JmsDefs
Listener class which receives messages from JMS.
Author:
Mike Douglass
See Also:
  • Constructor Details

    • JmsSysEventListener

      public JmsSysEventListener()
  • Method Details

    • open

      public JmsSysEventListener open(String queueName) throws NotificationException
      Parameters:
      queueName - we're listening on
      Returns:
      this object for Auto close
      Throws:
      NotificationException - on JMS error
    • open

      public JmsSysEventListener open(String queueName, Properties pr) throws NotificationException
      Parameters:
      queueName - we're listening on
      pr - the properties
      Returns:
      this object for Auto close
      Throws:
      NotificationException - on JMS error
    • close

      public void close()
      Close and release resources.
      Specified by:
      close in interface AutoCloseable
    • process

      public void process(boolean asynch) throws NotificationException
      For asynch we do the onMessage listener style. Otherwise we wait synchronously for incoming messages. We will presumably be interrupted on system closedown.
      Parameters:
      asynch - - is at an asynch process
      Throws:
      NotificationException - on JMS error
    • onMessage

      public void onMessage(javax.jms.Message message)
      Specified by:
      onMessage in interface javax.jms.MessageListener
    • onException

      public void onException(javax.jms.JMSException ex)
      Specified by:
      onException in interface javax.jms.ExceptionListener
    • action

      public abstract void action(SysEvent ev) throws NotificationException
      Called whenever a matching event occurs.
      Parameters:
      ev - the system message
      Throws:
      NotificationException - on fatal error
    • getLogger

      public org.bedework.util.logging.BwLogger getLogger()
      Specified by:
      getLogger in interface org.bedework.util.logging.Logged