This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 76dff191783 (chores) camel-sjms: avoid shadowing variables
76dff191783 is described below

commit 76dff191783c4df050528296674f8e184be0acee
Author: Otavio Rodolfo Piske <[email protected]>
AuthorDate: Thu Oct 13 12:56:54 2022 +0200

    (chores) camel-sjms: avoid shadowing variables
---
 .../apache/camel/component/sjms/SjmsProducer.java  | 15 +++++++------
 .../apache/camel/component/sjms/SjmsTemplate.java  | 26 +++++++++++++---------
 2 files changed, 24 insertions(+), 17 deletions(-)

diff --git 
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
 
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
index 1575833f042..bdcba19b4c8 100644
--- 
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
+++ 
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
@@ -183,13 +183,13 @@ public class SjmsProducer extends DefaultAsyncProducer {
 
     protected ReplyManager createReplyManager() throws Exception {
         // use a temporary queue
-        ReplyManager replyManager = new 
TemporaryQueueReplyManager(getEndpoint().getCamelContext());
-        replyManager.setEndpoint(getEndpoint());
+        ReplyManager temporaryQueueReplyManager = new 
TemporaryQueueReplyManager(getEndpoint().getCamelContext());
+        temporaryQueueReplyManager.setEndpoint(getEndpoint());
 
         String name = "JmsReplyManagerTimeoutChecker[" + 
getEndpoint().getEndpointConfiguredDestinationName() + "]";
         ScheduledExecutorService replyManagerScheduledExecutorService
                 = 
getEndpoint().getCamelContext().getExecutorServiceManager().newSingleThreadScheduledExecutor(name,
 name);
-        
replyManager.setScheduledExecutorService(replyManagerScheduledExecutorService);
+        
temporaryQueueReplyManager.setScheduledExecutorService(replyManagerScheduledExecutorService);
 
         name = "JmsReplyManagerOnTimeout[" + 
getEndpoint().getEndpointConfiguredDestinationName() + "]";
         // allow the timeout thread to timeout so during normal operation we 
do not have a idle thread
@@ -198,12 +198,13 @@ public class SjmsProducer extends DefaultAsyncProducer {
             throw new IllegalArgumentException("The option 
replyToOnTimeoutMaxConcurrentConsumers must be >= 1");
         }
         ExecutorService replyManagerExecutorService
-                = 
getEndpoint().getCamelContext().getExecutorServiceManager().newThreadPool(replyManager,
 name, 0, max);
-        replyManager.setOnTimeoutExecutorService(replyManagerExecutorService);
+                = 
getEndpoint().getCamelContext().getExecutorServiceManager().newThreadPool(temporaryQueueReplyManager,
 name, 0,
+                        max);
+        
temporaryQueueReplyManager.setOnTimeoutExecutorService(replyManagerExecutorService);
 
-        ServiceHelper.startService(replyManager);
+        ServiceHelper.startService(temporaryQueueReplyManager);
 
-        return replyManager;
+        return temporaryQueueReplyManager;
     }
 
     /**
diff --git 
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsTemplate.java
 
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsTemplate.java
index 67c7979887b..ba265dffe0e 100644
--- 
a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsTemplate.java
+++ 
b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsTemplate.java
@@ -19,6 +19,7 @@ package org.apache.camel.component.sjms;
 import javax.jms.Connection;
 import javax.jms.ConnectionFactory;
 import javax.jms.Destination;
+import javax.jms.JMSException;
 import javax.jms.Message;
 import javax.jms.MessageConsumer;
 import javax.jms.MessageProducer;
@@ -186,17 +187,9 @@ public class SjmsTemplate {
             // property to store it - CamelJMSDeliveryMode. Otherwise we could 
not keep
             // track whether it was set or not as getJMSDeliveryMode() will 
default return 1 regardless
             // if it was set or not, so we can never tell if end user provided 
it in a header
-            int deliveryMode;
-            if (JmsMessageHelper.hasProperty(message, 
JmsConstants.JMS_DELIVERY_MODE)) {
-                deliveryMode = 
message.getIntProperty(JmsConstants.JMS_DELIVERY_MODE);
-                // remove the temporary property
-                JmsMessageHelper.removeJmsProperty(message, 
JmsConstants.JMS_DELIVERY_MODE);
-            } else {
-                // use the existing delivery mode from the message
-                deliveryMode = message.getJMSDeliveryMode();
-            }
+            int resolvedDeliveryMode = resolveDeliveryMode(message);
 
-            producer.send(message, deliveryMode, priority, ttl);
+            producer.send(message, resolvedDeliveryMode, priority, ttl);
         } else if (explicitQosEnabled) {
             producer.send(message, deliveryMode, priority, timeToLive);
         } else {
@@ -204,6 +197,19 @@ public class SjmsTemplate {
         }
     }
 
+    private static int resolveDeliveryMode(Message message) throws 
JMSException {
+        int resolvedDeliveryMode;
+        if (JmsMessageHelper.hasProperty(message, 
JmsConstants.JMS_DELIVERY_MODE)) {
+            resolvedDeliveryMode = 
message.getIntProperty(JmsConstants.JMS_DELIVERY_MODE);
+            // remove the temporary property
+            JmsMessageHelper.removeJmsProperty(message, 
JmsConstants.JMS_DELIVERY_MODE);
+        } else {
+            // use the existing delivery mode from the message
+            resolvedDeliveryMode = message.getJMSDeliveryMode();
+        }
+        return resolvedDeliveryMode;
+    }
+
     public Message receive(String destinationName, String messageSelector, 
boolean isTopic, long timeout) throws Exception {
         Object obj = execute(sc -> {
             Destination dest = 
destinationCreationStrategy.createDestination(sc, destinationName, isTopic);

Reply via email to