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 ReplyManager
createReplyManager()
protected ReplyManager
createReplyManager(String replyTo)
protected String
determineCorrelationId(javax.jms.Message message, String provisionalCorrelationId)
Strategy to determine which correlation id to use among JMSMessageID and JMSCorrelationID.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.protected void
doStart()
protected void
doStop()
JmsEndpoint
getEndpoint()
org.springframework.jms.core.JmsOperations
getInOnlyTemplate()
org.springframework.jms.core.JmsOperations
getInOutTemplate()
org.apache.camel.spi.UuidGenerator
getUuidGenerator()
protected void
initReplyManager()
boolean
process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
protected boolean
processInOnly(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
protected boolean
processInOut(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)
protected javax.jms.Destination
resolveOrCreateDestination(String destinationName, javax.jms.Session session)
void
setInOnlyTemplate(org.springframework.jms.core.JmsOperations inOnlyTemplate)
void
setInOutTemplate(org.springframework.jms.core.JmsOperations inOutTemplate)
protected void
setMessageId(org.apache.camel.Exchange exchange)
void
setUuidGenerator(org.apache.camel.spi.UuidGenerator uuidGenerator)
protected void
testConnectionOnStartup()
Pre tests the connection before starting the listening.protected void
unInitReplyManager()
-
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:
getEndpoint
in interfaceorg.apache.camel.EndpointAware
- Overrides:
getEndpoint
in 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 theMessage
to 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.FailedToCreateProducerException
Pre 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:
doStart
in classorg.apache.camel.support.DefaultProducer
- Throws:
Exception
-
doStop
protected void doStop() throws Exception
- Overrides:
doStop
in 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
-
-