Package org.apache.camel.component.jms
Class JmsProducer
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultProducer
-
- org.apache.camel.support.DefaultAsyncProducer
-
- org.apache.camel.component.jms.JmsProducer
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.AsyncProcessor,org.apache.camel.AsyncProducer,org.apache.camel.EndpointAware,org.apache.camel.IsSingleton,org.apache.camel.Processor,org.apache.camel.Producer,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class JmsProducer extends org.apache.camel.support.DefaultAsyncProducer
-
-
Constructor Summary
Constructors Constructor Description JmsProducer(JmsEndpoint endpoint)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ReplyManagercreateReplyManager()protected ReplyManagercreateReplyManager(String replyTo)protected StringdetermineCorrelationId(javax.jms.Message message, String provisionalCorrelationId)Strategy to determine which correlation id to use among JMSMessageID and JMSCorrelationID.protected voiddoSend(boolean inOut, String destinationName, javax.jms.Destination destination, org.springframework.jms.core.MessageCreator messageCreator, MessageSentCallback callback)Sends the message using the JmsTemplate.protected voiddoStart()protected voiddoStop()JmsEndpointgetEndpoint()org.springframework.jms.core.JmsOperationsgetInOnlyTemplate()org.springframework.jms.core.JmsOperationsgetInOutTemplate()org.apache.camel.spi.UuidGeneratorgetUuidGenerator()protected voidinitReplyManager()booleanprocess(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)protected booleanprocessInOnly(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)protected booleanprocessInOut(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)protected javax.jms.DestinationresolveOrCreateDestination(String destinationName, javax.jms.Session session)voidsetInOnlyTemplate(org.springframework.jms.core.JmsOperations inOnlyTemplate)voidsetInOutTemplate(org.springframework.jms.core.JmsOperations inOutTemplate)protected voidsetMessageId(org.apache.camel.Exchange exchange)voidsetUuidGenerator(org.apache.camel.spi.UuidGenerator uuidGenerator)protected voidtestConnectionOnStartup()Pre tests the connection before starting the listening.protected voidunInitReplyManager()-
Methods inherited from class org.apache.camel.support.DefaultProducer
createExchange, isSingleton, toString
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Constructor Detail
-
JmsProducer
public JmsProducer(JmsEndpoint endpoint)
-
-
Method Detail
-
getEndpoint
public JmsEndpoint getEndpoint()
- Specified by:
getEndpointin interfaceorg.apache.camel.EndpointAware- Overrides:
getEndpointin classorg.apache.camel.support.DefaultProducer
-
initReplyManager
protected void initReplyManager()
-
unInitReplyManager
protected void unInitReplyManager()
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
processInOut
protected boolean processInOut(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
determineCorrelationId
protected String determineCorrelationId(javax.jms.Message message, String provisionalCorrelationId) throws javax.jms.JMSException
Strategy to determine which correlation id to use among JMSMessageID and JMSCorrelationID.- Parameters:
message- the JMS messageprovisionalCorrelationId- an optional provisional correlation id, which is preferred to be used- Returns:
- the correlation id to use
- Throws:
javax.jms.JMSException- can be thrown
-
processInOnly
protected boolean processInOnly(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
-
doSend
protected void doSend(boolean inOut, String destinationName, javax.jms.Destination destination, org.springframework.jms.core.MessageCreator messageCreator, MessageSentCallback callback)Sends the message using the JmsTemplate.- Parameters:
inOut- use inOut or inOnly templatedestinationName- the destination namedestination- the destination (if no name provided)messageCreator- the creator to create theMessageto sendcallback- optional callback to invoke when message has been sent
-
resolveOrCreateDestination
protected javax.jms.Destination resolveOrCreateDestination(String destinationName, javax.jms.Session session) throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
-
setMessageId
protected void setMessageId(org.apache.camel.Exchange exchange)
-
getInOnlyTemplate
public org.springframework.jms.core.JmsOperations getInOnlyTemplate()
-
setInOnlyTemplate
public void setInOnlyTemplate(org.springframework.jms.core.JmsOperations inOnlyTemplate)
-
getInOutTemplate
public org.springframework.jms.core.JmsOperations getInOutTemplate()
-
setInOutTemplate
public void setInOutTemplate(org.springframework.jms.core.JmsOperations inOutTemplate)
-
getUuidGenerator
public org.apache.camel.spi.UuidGenerator getUuidGenerator()
-
setUuidGenerator
public void setUuidGenerator(org.apache.camel.spi.UuidGenerator uuidGenerator)
-
testConnectionOnStartup
protected void testConnectionOnStartup() throws org.apache.camel.FailedToCreateProducerExceptionPre tests the connection before starting the listening. In case of connection failure the exception is thrown which prevents Camel from starting.- Throws:
org.apache.camel.FailedToCreateProducerException- is thrown if testing the connection failed
-
doStart
protected void doStart() throws Exception- Overrides:
doStartin classorg.apache.camel.support.DefaultProducer- Throws:
Exception
-
doStop
protected void doStop() throws Exception- Overrides:
doStopin classorg.apache.camel.support.DefaultProducer- Throws:
Exception
-
createReplyManager
protected ReplyManager createReplyManager() throws Exception
- Throws:
Exception
-
createReplyManager
protected ReplyManager createReplyManager(String replyTo) throws Exception
- Throws:
Exception
-
-