@VisitBeforeIf(condition="executeBefore") @VisitAfterIf(condition="!executeBefore") public class JMSRouter extends Object implements org.smooks.api.resource.visitor.sax.ng.BeforeVisitor, org.smooks.api.resource.visitor.sax.ng.AfterVisitor, org.smooks.api.delivery.ordering.Consumer
<resource-config selector="orderItems">
<resource>org.smooks.routing.jms.JMSRouter</resource>
<param name="beanId">beanId</param>
<param name="destinationName">/queue/smooksRouterQueue</param>
</resource-config>
....
Optional parameters:
<param name="executeBefore">true</param>
<param name="jndiContextFactory">ConnectionFactory</param>
<param name="jndiProviderUrl">jnp://localhost:1099</param>
<param name="jndiNamingFactory">org.jboss.naming:java.naming.factory.url.pkgs=org.jnp.interfaces</param>
<param name="connectionFactory">ConnectionFactory</param>
<param name="deliveryMode">persistent</param>
<param name="priority">10</param>
<param name="timeToLive">100000</param>
<param name="securityPrincipal">username</param>
<param name="securityCredential">password</param>
<param name="acknowledgeMode">AUTO_ACKNOWLEDGE</param>
<param name="transacted">false</param>
<param name="correlationIdPattern">orderitem-${order.orderId}-${order.orderItem.itemId}</param>
<param name="messageType">ObjectMessage</param>
<param name="highWaterMark">50</param>
<param name="highWaterMarkTimeout">5000</param>
<param name="highWaterMarkPollFrequency">500</param>
Description of configuration properties:
| Constructor and Description |
|---|
JMSRouter() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
close(javax.jms.Connection connection) |
protected void |
close(javax.jms.Session session) |
boolean |
consumes(Object object) |
protected javax.jms.MessageProducer |
createMessageProducer(javax.jms.Destination destination,
Context context) |
String |
getAcknowledgeMode() |
String |
getConnectionFactoryName() |
String |
getDeliveryMode() |
javax.jms.Destination |
getDestination() |
String |
getDestinationName() |
Boolean |
getExecuteBefore() |
String |
getJndiContextFactory() |
String |
getJndiNamingFactoryUrl() |
String |
getJndiProviderUrl() |
int |
getPriority() |
String |
getSecurityCredential() |
String |
getSecurityPrincipal() |
long |
getTimeToLive() |
void |
initialize() |
boolean |
isTransacted() |
void |
preDestroy() |
protected void |
sendMessage(javax.jms.Message message) |
void |
setAcknowledgeMode(Optional<AckMode> jmsAcknowledgeMode) |
void |
setBeanId(String beanId) |
void |
setConnectionFactoryName(Optional<String> connectionFactoryName) |
void |
setCorrelationIdPattern(String correlationIdPattern) |
void |
setDeliveryMode(Optional<DeliveryMode> deliveryMode) |
void |
setDestinationName(String destinationName) |
void |
setHighWaterMark(int highWaterMark) |
void |
setHighWaterMarkPollFrequency(long highWaterMarkPollFrequency) |
void |
setHighWaterMarkTimeout(long highWaterMarkTimeout) |
void |
setJndiContextFactory(Optional<String> contextFactory) |
void |
setJndiNamingFactoryUrl(Optional<String> pkgUrl) |
void |
setJndiProperties(Optional<String> propertiesFile) |
void |
setJndiProperties(Properties properties) |
void |
setJndiProviderUrl(Optional<String> providerUrl) |
protected void |
setMessageProducerProperties()
Sets the following MessageProducer properties:
|
void |
setMessageType(Optional<StrategyFactory.StrategyFactoryEnum> messageType) |
void |
setMsgCreationStrategy(MessageCreationStrategy msgCreationStrategy) |
void |
setPriority(Optional<Integer> priority) |
void |
setSecurityCredential(Optional<String> securityCredential) |
void |
setSecurityPrincipal(Optional<String> securityPrincipal) |
void |
setTimeToLive(Optional<Long> timeToLive) |
void |
setTransacted(Optional<Boolean> transacted) |
void |
visitAfter(Element element,
org.smooks.api.ExecutionContext execContext) |
void |
visitBefore(Element element,
org.smooks.api.ExecutionContext execContext) |
@PostConstruct public void initialize() throws org.smooks.api.SmooksConfigException, javax.jms.JMSException
org.smooks.api.SmooksConfigExceptionjavax.jms.JMSException@PreDestroy public void preDestroy() throws javax.jms.JMSException
javax.jms.JMSExceptionpublic boolean consumes(Object object)
consumes in interface org.smooks.api.delivery.ordering.Consumerpublic void setBeanId(String beanId)
public void setCorrelationIdPattern(String correlationIdPattern)
public void setHighWaterMark(int highWaterMark)
public void setHighWaterMarkTimeout(long highWaterMarkTimeout)
public void setHighWaterMarkPollFrequency(long highWaterMarkPollFrequency)
public void setJndiProperties(Properties properties)
@Inject public void setDestinationName(String destinationName)
@Inject public void setDeliveryMode(Optional<DeliveryMode> deliveryMode)
@Inject public void setSecurityCredential(Optional<String> securityCredential)
@Inject public void setConnectionFactoryName(Optional<String> connectionFactoryName)
@Inject public void setMessageType(Optional<StrategyFactory.StrategyFactoryEnum> messageType)
public Boolean getExecuteBefore()
public void visitAfter(Element element, org.smooks.api.ExecutionContext execContext) throws org.smooks.api.SmooksException
visitAfter in interface org.smooks.api.resource.visitor.sax.ng.AfterVisitororg.smooks.api.SmooksExceptionpublic void visitBefore(Element element, org.smooks.api.ExecutionContext execContext) throws org.smooks.api.SmooksException
visitBefore in interface org.smooks.api.resource.visitor.sax.ng.BeforeVisitororg.smooks.api.SmooksExceptionprotected javax.jms.MessageProducer createMessageProducer(javax.jms.Destination destination,
Context context)
throws javax.jms.JMSException
javax.jms.JMSExceptionprotected void setMessageProducerProperties()
throws org.smooks.api.SmooksConfigException
Subclasses may override this behaviour.
org.smooks.api.SmooksConfigExceptionprotected void sendMessage(javax.jms.Message message)
throws SmooksRoutingException
SmooksRoutingExceptionprotected void close(javax.jms.Connection connection)
protected void close(javax.jms.Session session)
public javax.jms.Destination getDestination()
public String getJndiContextFactory()
public String getJndiProviderUrl()
public String getJndiNamingFactoryUrl()
public String getDestinationName()
public String getDeliveryMode()
public long getTimeToLive()
public String getSecurityPrincipal()
public String getSecurityCredential()
public boolean isTransacted()
public String getConnectionFactoryName()
public int getPriority()
public String getAcknowledgeMode()
public void setMsgCreationStrategy(MessageCreationStrategy msgCreationStrategy)
Copyright © 2022. All rights reserved.