Author: davsclaus
Date: Thu Oct 22 08:41:55 2009
New Revision: 828399

URL: http://svn.apache.org/viewvc?rev=828399&view=rev
Log:
CAMEL-2097: Fixed setting request timeout not disalbed when 0. Also more 
@deprecated for old jms 1.0.2. Added more unit tests.

Added:
    
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
   (with props)
    
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsNoRequestTimeoutTest.java
      - copied, changed from r828342, 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSimpleRequestReplyTest.java
Modified:
    
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
    
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
    
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java

Modified: 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java?rev=828399&r1=828398&r2=828399&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java
 Thu Oct 22 08:41:55 2009
@@ -295,6 +295,10 @@
         getConfiguration().setTransactionTimeout(transactionTimeout);
     }
 
+    /**
+     * @deprecated will be removed in Camel 2.2
+     */
+    @Deprecated
     public void setUseVersion102(boolean useVersion102) {
         getConfiguration().setUseVersion102(useVersion102);
     }

Modified: 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java?rev=828399&r1=828398&r2=828399&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java
 Thu Oct 22 08:41:55 2009
@@ -573,6 +573,10 @@
         return getConfiguration().isUseMessageIDAsCorrelationID();
     }
 
+    /**
+     * @deprecated will be removed in Camel 2.2
+     */
+    @Deprecated
     public boolean isUseVersion102() {
         return getConfiguration().isUseVersion102();
     }
@@ -813,6 +817,10 @@
         
getConfiguration().setUseMessageIDAsCorrelationID(useMessageIDAsCorrelationID);
     }
 
+    /**
+     * @deprecated will be removed in Camel 2.2
+     */
+    @Deprecated
     public void setUseVersion102(boolean useVersion102) {
         getConfiguration().setUseVersion102(useVersion102);
     }

Modified: 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java?rev=828399&r1=828398&r2=828399&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
 Thu Oct 22 08:41:55 2009
@@ -221,7 +221,7 @@
                 if (LOG.isDebugEnabled()) {
                     LOG.debug("Message sent, now waiting for reply at: " + 
replyTo.toString());
                 }
-                if (requestTimeout < 0) {
+                if (requestTimeout <= 0) {
                     message = (Message)futureHolder.get().get();
                 } else {
                     message = (Message)futureHolder.get().get(requestTimeout, 
TimeUnit.MILLISECONDS);
@@ -242,9 +242,9 @@
 
                 if (endpoint.isTransferException() && body instanceof 
Exception) {
                     if (LOG.isDebugEnabled()) {
-                        LOG.debug("Reply recieved. Setting reply an Exception: 
" + body);
+                        LOG.debug("Reply recieved. Setting reply as an 
Exception: " + body);
                     }
-                    // we got an exception back and endpoint was configued to 
transfer exception
+                    // we got an exception back and endpoint was configured to 
transfer exception
                     // therefore set response as exception
                     exchange.setException((Exception) body);
                 } else {

Added: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java?rev=828399&view=auto
==============================================================================
--- 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
 (added)
+++ 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
 Thu Oct 22 08:41:55 2009
@@ -0,0 +1,104 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.component.jms;
+
+import javax.jms.ConnectionFactory;
+
+import org.apache.activemq.ActiveMQConnectionFactory;
+import org.apache.camel.CamelContext;
+import org.apache.camel.builder.RouteBuilder;
+import static 
org.apache.camel.component.jms.JmsComponent.jmsComponentClientAcknowledge;
+import org.apache.camel.test.junit4.CamelTestSupport;
+import org.junit.Test;
+
+/**
+ * @version $Revision$
+ */
+public class JmsComponentTest extends CamelTestSupport {
+
+    protected String componentName = "activemq";
+    protected JmsEndpoint endpoint;
+
+    @Test
+    public void testComponentOptions() throws Exception {
+        String reply = 
template.requestBody("activemq:queue:hello?requestTimeout=0", "Hello World", 
String.class);
+        assertEquals("Bye World", reply);
+
+        assertEquals(true, endpoint.isAcceptMessagesWhileStopping());
+        assertEquals(true, endpoint.isAlwaysCopyMessage());
+        assertEquals(1, endpoint.getAcknowledgementMode());
+        assertEquals(true, endpoint.isAutoStartup());
+        assertEquals(1, endpoint.getCacheLevel());
+        assertEquals("foo", endpoint.getClientId());
+        assertEquals(2, endpoint.getConcurrentConsumers());
+        assertEquals(ConsumerType.Simple, endpoint.getConsumerType());
+        assertEquals(true, endpoint.isDeliveryPersistent());
+        assertEquals(true, endpoint.isExplicitQosEnabled());
+        assertEquals(20, endpoint.getIdleTaskExecutionLimit());
+        assertEquals(5, endpoint.getMaxConcurrentConsumers());
+        assertEquals(90, endpoint.getMaxMessagesPerTask());
+        assertEquals(3, endpoint.getPriority());
+        assertEquals(5000, endpoint.getReceiveTimeout());
+        assertEquals(9000, endpoint.getRecoveryInterval());
+        assertEquals(3000, endpoint.getTimeToLive());
+        assertEquals(true, endpoint.isTransacted());
+        assertEquals(15000, endpoint.getTransactionTimeout());
+        assertEquals(false, endpoint.isUseVersion102());
+    }
+
+    protected CamelContext createCamelContext() throws Exception {
+        CamelContext camelContext = super.createCamelContext();
+
+        ConnectionFactory connectionFactory = new 
ActiveMQConnectionFactory("vm://localhost?broker.persistent=false");
+        JmsComponent comp = jmsComponentClientAcknowledge(connectionFactory);
+
+        comp.setAcceptMessagesWhileStopping(true);
+        comp.setAlwaysCopyMessage(true);
+        comp.setAcknowledgementMode(1);
+        comp.setAutoStartup(true);
+        comp.setCacheLevel(1);
+        comp.setClientId("foo");
+        comp.setConcurrentConsumers(2);
+        comp.setConsumerType(ConsumerType.Simple);
+        comp.setDeliveryPersistent(true);
+        comp.setExplicitQosEnabled(true);
+        comp.setIdleTaskExecutionLimit(20);
+        comp.setMaxConcurrentConsumers(5);
+        comp.setMaxMessagesPerTask(90);
+        comp.setPriority(3);
+        comp.setReceiveTimeout(5000);
+        comp.setRecoveryInterval(9000);
+        comp.setTimeToLive(3000);
+        comp.setTransacted(true);
+        comp.setTransactionTimeout(15000);
+        comp.setUseVersion102(false);
+
+        camelContext.addComponent(componentName, comp);
+
+        endpoint = (JmsEndpoint) comp.createEndpoint("queue:hello");
+
+        return camelContext;
+    }
+
+    protected RouteBuilder createRouteBuilder() throws Exception {
+        return new RouteBuilder() {
+            public void configure() throws Exception {
+                from(endpoint).transform(constant("Bye World"));
+            }
+        };
+    }
+}

Propchange: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsComponentTest.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Copied: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsNoRequestTimeoutTest.java
 (from r828342, 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSimpleRequestReplyTest.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsNoRequestTimeoutTest.java?p2=camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsNoRequestTimeoutTest.java&p1=camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSimpleRequestReplyTest.java&r1=828342&r2=828399&rev=828399&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSimpleRequestReplyTest.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsNoRequestTimeoutTest.java
 Thu Oct 22 08:41:55 2009
@@ -20,40 +20,19 @@
 
 import org.apache.activemq.ActiveMQConnectionFactory;
 import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.ExchangePattern;
-import org.apache.camel.Processor;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 import static 
org.apache.camel.component.jms.JmsComponent.jmsComponentClientAcknowledge;
 
-/**
- * A simple request / reply test
- */
-public class JmsSimpleRequestReplyTest extends CamelTestSupport {
+public class JmsNoRequestTimeoutTest extends CamelTestSupport {
 
     protected String componentName = "activemq";
 
     @Test
-    public void testRequetReply() throws Exception {
-        MockEndpoint result = getMockEndpoint("mock:result");
-        result.expectedMessageCount(1);
-
-        Exchange out = template.send("activemq:queue:hello", 
ExchangePattern.InOut, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody("Hello World");
-                exchange.getIn().setHeader("foo", 123);
-            }
-        });
-
-        result.assertIsSatisfied();
-
-        assertNotNull(out);
-
-        assertEquals("Bye World", out.getOut().getBody(String.class));
-        assertEquals(123, out.getOut().getHeader("foo"));
+    public void testNoRequestTimeout() throws Exception {
+        String reply = 
template.requestBody("activemq:queue:hello?requestTimeout=0", "Hello World", 
String.class);
+        assertEquals("Bye World", reply);
     }
 
     protected CamelContext createCamelContext() throws Exception {
@@ -68,12 +47,7 @@
     protected RouteBuilder createRouteBuilder() throws Exception {
         return new RouteBuilder() {
             public void configure() throws Exception {
-                from("activemq:queue:hello").process(new Processor() {
-                    public void process(Exchange exchange) throws Exception {
-                        exchange.getIn().setBody("Bye World");
-                        
assertNotNull(exchange.getIn().getHeader("JMSReplyTo"));
-                    }
-                }).to("mock:result");
+                from("activemq:queue:hello").transform(constant("Bye World"));
             }
         };
     }


Reply via email to