org.jboss.soa.esb.listeners.message
Class CbrJmsQueueListener

java.lang.Object
  extended by org.jboss.soa.esb.listeners.message.AbstractListener
      extended by org.jboss.soa.esb.listeners.message.JmsQueueListener
          extended by org.jboss.soa.esb.listeners.message.CbrJmsQueueListener
All Implemented Interfaces:
java.lang.Runnable

public class CbrJmsQueueListener
extends JmsQueueListener

Esb Message aware Content Based Router JMS queue listener.

Expects an Object message whose getObject() method returns an org.jboss.soa.esb.message.Message
Clones the 'static' ConfigTree with which this listener was created, and stores the cloned tree inside the Message (to enable all actions in the chain to use the configuration)
Instantiates and runs a new ActionProcessingPipeline on the received esb Message (augmented with ConfigTree) that will in turn instantiate and run all action classes in the chain

Since:
Version 4.0
Author:
Kurt Stam

Field Summary
 
Fields inherited from class org.jboss.soa.esb.listeners.message.JmsQueueListener
_bError, _epr, _eprCategoryName, _eprName, _iSleepForRetry, _jmsFactoryClass, _jndiCtx, _jndiType, _jndiURL, _oQconn, _oQsess, _oQueue, _queueName, _receiver, _sSelector
 
Fields inherited from class org.jboss.soa.esb.listeners.message.AbstractListener
_config, _controller, logger, m_iMaxThr, m_iUpperThreadLimit, PARM_MAX_THREADS, pipelineExecutorPool
 
Constructor Summary
CbrJmsQueueListener(EsbListenerController controller, ConfigTree config)
           
 
Method Summary
 void run()
          Loops until controlling process determines
Waits for JMS Object messages containing ESB messages
When one is received, instantiates an action processing pipeline to process it
Pipeline is started in new Thread
 
Methods inherited from class org.jboss.soa.esb.listeners.message.JmsQueueListener
checkMyParms, cleanup, obtainAttribute, receiveEsbMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CbrJmsQueueListener

public CbrJmsQueueListener(EsbListenerController controller,
                           ConfigTree config)
                    throws ConfigurationException
Throws:
ConfigurationException
Method Detail

run

public void run()
Loops until controlling process determines
Waits for JMS Object messages containing ESB messages
When one is received, instantiates an action processing pipeline to process it
Pipeline is started in new Thread

Specified by:
run in interface java.lang.Runnable
Overrides:
run in class JmsQueueListener