Class Consumer

java.lang.Object
ru.bitel.bgbilling.kernel.event.MessageAdapter
ru.bitel.bgbilling.kernel.event.Consumer
All Implemented Interfaces:
javax.jms.MessageListener, EventListener<ru.bitel.bgbilling.kernel.event.common.Event>

public final class Consumer
extends MessageAdapter
implements javax.jms.MessageListener
Обработчик сообщения.
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected java.lang.String applicationName  
    protected EventListenerContext eventListenerContext
    MessageListener.onMessage(Message) выполняется в одном потоке Session.
    Поэтому можно использовать один объект EventListenerContext, если обработка в одном пакете.
    protected EventProcessor eventProcessor  
    boolean localSession  

    Fields inherited from class ru.bitel.bgbilling.kernel.event.MessageAdapter

    deliveryMode, priority, session, timeToLive
  • Constructor Summary

    Constructors
    Constructor Description
    Consumer​(EventProcessor eventProcessor, javax.jms.Session session, int moduleId, int pluginId, java.lang.String destination, java.lang.String query, boolean queue, boolean noLocal, int deliveryMode, int priority, long timeToLive, boolean localSession, java.lang.Class<? extends ru.bitel.bgbilling.kernel.event.common.Event>... clazz)  
    Consumer​(EventProcessor eventProcessor, javax.jms.Session session, java.lang.Class<? extends ru.bitel.bgbilling.kernel.event.common.Event> clazz, EventType type, int moduleId, int pluginId, java.lang.String destination, java.lang.String query, boolean setMessageListener, boolean localSession)  
  • Method Summary

    Modifier and Type Method Description
    void close()  
    protected javax.jms.MessageConsumer createConsumer​(java.lang.String destination, java.lang.String query, boolean noLocal, boolean topic)  
    void destroy()  
    void notify​(ru.bitel.bgbilling.kernel.event.common.Event e, EventListenerContext ctx)  
    void onMessage​(javax.jms.Message message)  
    protected boolean onMessage0​(javax.jms.Message message, EventListenerContext eventListenerContext, EventListener<ru.bitel.bgbilling.kernel.event.common.Event> listener)  
    <E extends ru.bitel.bgbilling.kernel.event.common.Event>
    E
    receive()  
    <E extends ru.bitel.bgbilling.kernel.event.common.Event>
    E
    receive​(long timeout)  
    <E extends ru.bitel.bgbilling.kernel.event.common.Event>
    E
    receiveNoWait()  
    protected void trySendReply​(javax.jms.Message message, ru.bitel.bgbilling.kernel.event.common.Event e, java.lang.Exception ex)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • eventProcessor

      protected final EventProcessor eventProcessor
    • applicationName

      protected final java.lang.String applicationName
    • eventListenerContext

      protected final EventListenerContext eventListenerContext
      MessageListener.onMessage(Message) выполняется в одном потоке Session.
      Поэтому можно использовать один объект EventListenerContext, если обработка в одном пакете.
    • localSession

      public final boolean localSession
  • Constructor Details

    • Consumer

      public Consumer​(EventProcessor eventProcessor, javax.jms.Session session, java.lang.Class<? extends ru.bitel.bgbilling.kernel.event.common.Event> clazz, EventType type, int moduleId, int pluginId, java.lang.String destination, java.lang.String query, boolean setMessageListener, boolean localSession) throws javax.jms.JMSException, javax.xml.bind.JAXBException
      Throws:
      javax.jms.JMSException
      javax.xml.bind.JAXBException
    • Consumer

      public Consumer​(EventProcessor eventProcessor, javax.jms.Session session, int moduleId, int pluginId, java.lang.String destination, java.lang.String query, boolean queue, boolean noLocal, int deliveryMode, int priority, long timeToLive, boolean localSession, java.lang.Class<? extends ru.bitel.bgbilling.kernel.event.common.Event>... clazz) throws javax.jms.JMSException, javax.xml.bind.JAXBException
      Throws:
      javax.jms.JMSException
      javax.xml.bind.JAXBException
  • Method Details

    • onMessage0

      protected boolean onMessage0​(javax.jms.Message message, EventListenerContext eventListenerContext, EventListener<ru.bitel.bgbilling.kernel.event.common.Event> listener) throws javax.jms.JMSException, javax.xml.bind.JAXBException, ru.bitel.bgbilling.common.BGException
      Throws:
      javax.jms.JMSException
      javax.xml.bind.JAXBException
      ru.bitel.bgbilling.common.BGException
    • onMessage

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

      protected javax.jms.MessageConsumer createConsumer​(java.lang.String destination, java.lang.String query, boolean noLocal, boolean topic) throws javax.jms.JMSException
      Throws:
      javax.jms.JMSException
    • trySendReply

      protected final void trySendReply​(javax.jms.Message message, ru.bitel.bgbilling.kernel.event.common.Event e, java.lang.Exception ex) throws javax.jms.JMSException, javax.xml.bind.JAXBException
      Throws:
      javax.jms.JMSException
      javax.xml.bind.JAXBException
    • close

      public void close() throws javax.jms.JMSException
      Throws:
      javax.jms.JMSException
    • destroy

      public void destroy() throws javax.jms.JMSException
      Throws:
      javax.jms.JMSException
    • receive

      public <E extends ru.bitel.bgbilling.kernel.event.common.Event> E receive() throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • receive

      public <E extends ru.bitel.bgbilling.kernel.event.common.Event> E receive​(long timeout) throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • receiveNoWait

      public <E extends ru.bitel.bgbilling.kernel.event.common.Event> E receiveNoWait() throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • notify

      public void notify​(ru.bitel.bgbilling.kernel.event.common.Event e, EventListenerContext ctx) throws ru.bitel.bgbilling.common.BGException
      Specified by:
      notify in interface EventListener<ru.bitel.bgbilling.kernel.event.common.Event>
      Throws:
      ru.bitel.bgbilling.common.BGException