Author: davsclaus
Date: Tue Jun  3 22:49:01 2008
New Revision: 662986

URL: http://svn.apache.org/viewvc?rev=662986&view=rev
Log:
CAMEL-527: Applied patch with thanks to Christian. CamelTemplate is 
@deprecated. Introduced DefaultProducerTemplate instead. Use factory method on 
CamelContext to get an instance

Added:
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultProducerTemplate.java
      - copied, changed from r662971, 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
Modified:
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
    
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/DirectoryCreateIssueTest.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/vm/VmRouteTest.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/StringDataFormatTest.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/SetOutBodyTest.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/TryProcessorHandleTest.java
    
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/aggregator/AlbertoAggregatorTest.java
    
activemq/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/CamelContext.java
 Tue Jun  3 22:49:01 2008
@@ -196,4 +196,9 @@
      */
     Language resolveLanguage(String language);
 
+    /**
+     * Creates a new ProducerTemplate
+     */
+    <E extends Exchange> ProducerTemplate<E> createProducerTemplate();
+
 }

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/EndpointInject.java
 Tue Jun  3 22:49:01 2008
@@ -21,12 +21,11 @@
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
-import org.apache.camel.impl.CamelTemplate;
 import org.apache.camel.spi.Registry;
 
 /**
- * Used to indicate an injection point of an [EMAIL PROTECTED] Endpoint}, 
[EMAIL PROTECTED] Producer},
- * [EMAIL PROTECTED] ProducerTemplate} or [EMAIL PROTECTED] CamelTemplate} 
into a POJO.
+ * Used to indicate an injection point of an [EMAIL PROTECTED] Endpoint}, 
[EMAIL PROTECTED] Producer} or
+ * [EMAIL PROTECTED] ProducerTemplate} into a POJO.
  *
  * A <a href="http://activemq.apache.org/camel/uris.html";>URI</a> for an 
endpoint
  * can be specified on this annotation, or a name can be specified which is 
resolved in the

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
 Tue Jun  3 22:49:01 2008
@@ -37,6 +37,7 @@
  * [EMAIL PROTECTED] Exchange} to an [EMAIL PROTECTED] Endpoint}.
  *
  * @version $Revision$
+ * @deprecated use [EMAIL PROTECTED] ProducerTemplate} instead, can be created 
using [EMAIL PROTECTED] org.apache.camel.CamelContext#createProducerTemplate()}.
  */
 public class CamelTemplate<E extends Exchange> extends ServiceSupport 
implements ProducerTemplate<E> {
     private CamelContext context;

Modified: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
 Tue Jun  3 22:49:01 2008
@@ -38,6 +38,7 @@
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.Service;
 import org.apache.camel.TypeConverter;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.impl.converter.DefaultTypeConverter;
 import org.apache.camel.model.RouteType;
@@ -578,4 +579,8 @@
         return isStarted() && !isStarting();
     }
 
+    public <E extends Exchange> ProducerTemplate<E> createProducerTemplate() {
+        return new DefaultProducerTemplate<E>(this);
+    }
+
 }

Copied: 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultProducerTemplate.java
 (from r662971, 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java)
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultProducerTemplate.java?p2=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultProducerTemplate.java&p1=activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java&r1=662971&r2=662986&rev=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/CamelTemplate.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultProducerTemplate.java
 Tue Jun  3 22:49:01 2008
@@ -33,23 +33,23 @@
 
 /**
  * A client helper object (named like Spring's TransactionTemplate & 
JmsTemplate
- * et al) for working with Camel and sending [EMAIL PROTECTED] Message} 
instances in an
- * [EMAIL PROTECTED] Exchange} to an [EMAIL PROTECTED] Endpoint}.
+ * et al) for working with Camel and sending [EMAIL PROTECTED] 
org.apache.camel.Message} instances in an
+ * [EMAIL PROTECTED] org.apache.camel.Exchange} to an [EMAIL PROTECTED] 
org.apache.camel.Endpoint}.
  *
  * @version $Revision$
  */
-public class CamelTemplate<E extends Exchange> extends ServiceSupport 
implements ProducerTemplate<E> {
+public class DefaultProducerTemplate<E extends Exchange> extends 
ServiceSupport implements ProducerTemplate<E> {
     private CamelContext context;
     private final ProducerCache<E> producerCache = new ProducerCache<E>();
     private boolean useEndpointCache = true;
     private final Map<String, Endpoint<E>> endpointCache = new HashMap<String, 
Endpoint<E>>();
     private Endpoint<E> defaultEndpoint;
 
-    public CamelTemplate(CamelContext context) {
+    public DefaultProducerTemplate(CamelContext context) {
         this.context = context;
     }
 
-    public CamelTemplate(CamelContext context, Endpoint defaultEndpoint) {
+    public DefaultProducerTemplate(CamelContext context, Endpoint 
defaultEndpoint) {
         this(context);
         this.defaultEndpoint = defaultEndpoint;
     }
@@ -75,7 +75,6 @@
     }
 
     public E send(Endpoint<E> endpoint, E exchange) {
-        //E convertedExchange = endpoint.createExchange(exchange);
         E convertedExchange = exchange;
         producerCache.send(endpoint, convertedExchange);
         return convertedExchange;
@@ -246,7 +245,7 @@
         }
         return null;
     }
-    
+
     // Implementation methods
     // -----------------------------------------------------------------------
 
@@ -318,4 +317,4 @@
         return answer;
     }
 
-}
+}
\ No newline at end of file

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/ContextTestSupport.java
 Tue Jun  3 22:49:01 2008
@@ -22,7 +22,7 @@
 
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.impl.CamelTemplate;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.impl.JndiRegistry;
 import org.apache.camel.spi.Language;
@@ -37,7 +37,7 @@
  */
 public abstract class ContextTestSupport extends TestSupport {
     protected CamelContext context;
-    protected CamelTemplate<Exchange> template;
+    protected ProducerTemplate<Exchange> template;
     private boolean useRouteBuilder = true;
     private Service camelContextService;
 
@@ -67,7 +67,7 @@
         context = createCamelContext();
         assertValidContext(context);
 
-        template = new CamelTemplate<Exchange>(context);
+        template = context.createProducerTemplate();
 
         if (useRouteBuilder) {
             RouteBuilder[] builders = createRouteBuilders();

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/DirectoryCreateIssueTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/DirectoryCreateIssueTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/DirectoryCreateIssueTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/file/DirectoryCreateIssueTest.java
 Tue Jun  3 22:49:01 2008
@@ -23,8 +23,8 @@
 import org.apache.camel.Message;
 import org.apache.camel.Processor;
 import org.apache.camel.TestSupport;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.impl.CamelTemplate;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.log4j.Logger;
 
@@ -35,7 +35,7 @@
 public class DirectoryCreateIssueTest extends TestSupport {
     private static final Logger LOG = 
Logger.getLogger(DirectoryCreateIssueTest.class);
     private CamelContext context;
-    private CamelTemplate template;
+    private ProducerTemplate template;
 
     @Override
     protected void setUp() throws Exception {
@@ -49,7 +49,7 @@
 */
         context = new DefaultCamelContext();
         context.start();
-        template = new CamelTemplate(context);
+        template = context.createProducerTemplate(); 
     }
 
     @Override

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/vm/VmRouteTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/vm/VmRouteTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/vm/VmRouteTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/component/vm/VmRouteTest.java
 Tue Jun  3 22:49:01 2008
@@ -17,10 +17,10 @@
 package org.apache.camel.component.vm;
 
 import org.apache.camel.CamelContext;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.TestSupport;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.impl.CamelTemplate;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.util.ServiceHelper;
 
@@ -30,7 +30,7 @@
 public class VmRouteTest extends TestSupport {
     private CamelContext context1 = new DefaultCamelContext();
     private CamelContext context2 = new DefaultCamelContext();
-    private CamelTemplate template = new CamelTemplate(context1);
+    private ProducerTemplate template = context1.createProducerTemplate();
     private Object expectedBody = "<hello>world!</hello>";
 
     public void testSedaQueue() throws Exception {

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/StringDataFormatTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/StringDataFormatTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/StringDataFormatTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/impl/StringDataFormatTest.java
 Tue Jun  3 22:49:01 2008
@@ -22,6 +22,7 @@
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.TestSupport;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
@@ -32,11 +33,11 @@
 public class StringDataFormatTest extends TestSupport {
 
     private CamelContext context;
-    private CamelTemplate template;
+    private ProducerTemplate template;
 
     protected void setUp() throws Exception {
         context = new DefaultCamelContext();
-        template = new CamelTemplate(context);
+        template = context.createProducerTemplate();
         template.start();
     }
 

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/SetOutBodyTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/SetOutBodyTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/SetOutBodyTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/SetOutBodyTest.java
 Tue Jun  3 22:49:01 2008
@@ -24,6 +24,7 @@
  */
 public class SetOutBodyTest extends TransformProcessorTest {
 
+    @SuppressWarnings("deprecation")
     protected RouteBuilder createRouteBuilder() {
         return new RouteBuilder() {
             public void configure() {

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/TryProcessorHandleTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/TryProcessorHandleTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/TryProcessorHandleTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/TryProcessorHandleTest.java
 Tue Jun  3 22:49:01 2008
@@ -60,6 +60,9 @@
     private class ProcessorHandle implements Processor {
         public void process(Exchange exchange) throws Exception {
             handled = true;
+
+            assertEquals("Should not be marked as failed", false, 
exchange.isFailed());
+
             Exception e = 
(Exception)exchange.getIn().getHeader("caught.exception");
             assertNotNull("There should be an exception", e);
             assertTrue(e instanceof IllegalStateException);

Modified: 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/aggregator/AlbertoAggregatorTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/aggregator/AlbertoAggregatorTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/aggregator/AlbertoAggregatorTest.java
 (original)
+++ 
activemq/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/aggregator/AlbertoAggregatorTest.java
 Tue Jun  3 22:49:01 2008
@@ -25,9 +25,9 @@
 import org.apache.camel.Exchange;
 import org.apache.camel.Message;
 import org.apache.camel.Processor;
+import org.apache.camel.ProducerTemplate;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.impl.CamelTemplate;
 import org.apache.camel.model.AggregatorType;
 import org.apache.camel.processor.aggregate.AggregationStrategy;
 import org.apache.commons.logging.Log;
@@ -65,7 +65,7 @@
         resultEndpoint.expectedMessageCount(1);
         resultEndpoint.expectedBodiesReceived(allBrothers);
 
-        CamelTemplate template = new CamelTemplate(context);
+        ProducerTemplate template = context.createProducerTemplate();
         template.sendBody("direct:start", allNames);
 
         assertMockEndpointsSatisifed();

Modified: 
activemq/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
URL: 
http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java?rev=662986&r1=662985&r2=662986&view=diff
==============================================================================
--- 
activemq/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
 (original)
+++ 
activemq/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
 Tue Jun  3 22:49:01 2008
@@ -415,7 +415,7 @@
         Object reply = template.requestBody(endpoingUriA, request);
         assertEquals(reply, request);
 
-        JmsEndpoint endpoint = template.getResolvedEndpoint(endpoingUriA, 
JmsEndpoint.class);
+        JmsEndpoint endpoint = context.getEndpoint(endpoingUriA, 
JmsEndpoint.class);
         // Wait 1 extra purge cycle to make sure that TimeoutMap had a chance 
to cleanup
         
Thread.sleep(endpoint.getConfiguration().getRequestMapPurgePollTimeMillis());
         assertTrue(endpoint.getRequestor().getRequestMap().size() == 0);
@@ -429,7 +429,7 @@
         Object reply = template.requestBody(endpoingUriA, request);
         assertEquals(reply, request);
 
-        JmsEndpoint endpoint = template.getResolvedEndpoint(endpoingUriA, 
JmsEndpoint.class);
+        JmsEndpoint endpoint = context.getEndpoint(endpoingUriA, 
JmsEndpoint.class);
         // Wait 1 extra purge cycle to make sure that TimeoutMap had a chance 
to cleanup
         
Thread.sleep(endpoint.getConfiguration().getRequestMapPurgePollTimeMillis());
         assertTrue(endpoint.getRequestor().getDeferredRequestMap().size() == 
0);


Reply via email to