Class RabbitMQPublish

  • All Implemented Interfaces:
    adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.QuickInfoSupporter, adams.core.SizeOfHandler, adams.flow.core.FlowContextHandler, Serializable

    public class RabbitMQPublish
    extends adams.flow.sink.sendnotification.AbstractNotification
    Publishes the incoming message using the specified exchange or queue. Normally, when using an exchange, leave queue empty, and when using a queue, leave the exchange empty.
    Author:
    FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected com.rabbitmq.client.Channel m_Channel
      the channel action to use.
      protected RabbitMQConnection m_Connection
      the connection in use.
      protected String m_Exchange
      the name of the exchange.
      protected String m_Queue
      the name of the queue.
      • Fields inherited from class adams.flow.sink.sendnotification.AbstractNotification

        m_FlowContext
      • Fields inherited from class adams.core.option.AbstractOptionHandler

        m_OptionManager
      • Fields inherited from class adams.core.logging.LoggingObject

        m_Logger, m_LoggingIsEnabled, m_LoggingLevel
    • Constructor Summary

      Constructors 
      Constructor Description
      RabbitMQPublish()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected String check​(String msg)
      Hook method before attempting to send the message.
      void defineOptions()
      Adds options to the internal list of options.
      protected String doSendNotification​(String msg)
      Sends the notification.
      String exchangeTipText()
      Returns the tip text for this property.
      String getExchange()
      Returns the name of the exchange.
      String getQueue()
      Returns the name of the queue.
      String getQuickInfo()
      Returns a quick info about the actor, which will be displayed in the GUI.
      String globalInfo()
      Returns a string describing the object.
      String queueTipText()
      Returns the tip text for this property.
      void setExchange​(String value)
      Sets the name of the exchange.
      void setQueue​(String value)
      Sets the name of the queue.
      • Methods inherited from class adams.flow.sink.sendnotification.AbstractNotification

        getFlowContext, sendNotification, setFlowContext
      • Methods inherited from class adams.core.option.AbstractOptionHandler

        cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
      • Methods inherited from class adams.core.logging.LoggingObject

        configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
      • Methods inherited from interface adams.core.logging.LoggingLevelHandler

        getLoggingLevel
    • Field Detail

      • m_Exchange

        protected String m_Exchange
        the name of the exchange.
      • m_Queue

        protected String m_Queue
        the name of the queue.
      • m_Connection

        protected transient RabbitMQConnection m_Connection
        the connection in use.
      • m_Channel

        protected transient com.rabbitmq.client.Channel m_Channel
        the channel action to use.
    • Constructor Detail

      • RabbitMQPublish

        public RabbitMQPublish()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing the object.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
        Returns:
        a description suitable for displaying in the gui
      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class adams.core.option.AbstractOptionHandler
      • getQuickInfo

        public String getQuickInfo()
        Returns a quick info about the actor, which will be displayed in the GUI.
        Specified by:
        getQuickInfo in interface adams.core.QuickInfoSupporter
        Overrides:
        getQuickInfo in class adams.flow.sink.sendnotification.AbstractNotification
        Returns:
        null if no info available, otherwise short string
      • setExchange

        public void setExchange​(String value)
        Sets the name of the exchange.
        Parameters:
        value - the name
      • getExchange

        public String getExchange()
        Returns the name of the exchange.
        Returns:
        the name
      • exchangeTipText

        public String exchangeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setQueue

        public void setQueue​(String value)
        Sets the name of the queue.
        Parameters:
        value - the name
      • getQueue

        public String getQueue()
        Returns the name of the queue.
        Returns:
        the name
      • queueTipText

        public String queueTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • check

        protected String check​(String msg)
        Hook method before attempting to send the message.
        Overrides:
        check in class adams.flow.sink.sendnotification.AbstractNotification
        Parameters:
        msg - the message to send
        Returns:
        null if successful, otherwise error message
      • doSendNotification

        protected String doSendNotification​(String msg)
        Sends the notification.
        Specified by:
        doSendNotification in class adams.flow.sink.sendnotification.AbstractNotification
        Parameters:
        msg - the message to send
        Returns:
        null if successfully sent, otherwise error message