You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2009/08/29 14:21:47 UTC

svn commit: r809122 - in /camel/trunk: camel-core/src/main/java/org/apache/camel/impl/ camel-core/src/main/java/org/apache/camel/management/ camel-core/src/main/java/org/apache/camel/processor/ camel-core/src/main/java/org/apache/camel/spi/ camel-core/...

Author: davsclaus
Date: Sat Aug 29 12:21:47 2009
New Revision: 809122

URL: http://svn.apache.org/viewvc?rev=809122&view=rev
Log:
CAMEL-1960: Enrich had an issue with aggregating the result to preserve headers. CAMEL-1955: Fixed issue when copying same message.

Modified:
    camel/trunk/camel-core/src/main/java/org/apache/camel/impl/EventDrivenConsumerRoute.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/impl/MessageSupport.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultEventFactory.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/spi/EventFactory.java
    camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java
    camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRoundtripHeaderTest.java

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/EventDrivenConsumerRoute.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/EventDrivenConsumerRoute.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/EventDrivenConsumerRoute.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/EventDrivenConsumerRoute.java Sat Aug 29 12:21:47 2009
@@ -23,8 +23,8 @@
 import org.apache.camel.Navigate;
 import org.apache.camel.Processor;
 import org.apache.camel.Service;
-import org.apache.camel.spi.RouteContext;
 import org.apache.camel.management.InstrumentationProcessor;
+import org.apache.camel.spi.RouteContext;
 
 /**
  * A {@link DefaultRoute} which starts with an

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/MessageSupport.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/MessageSupport.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/MessageSupport.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/MessageSupport.java Sat Aug 29 12:21:47 2009
@@ -129,6 +129,11 @@
     }
 
     public void copyFrom(Message that) {
+        if (that == this) {
+            // the same instance so do not need to copy
+            return;
+        }
+
         setMessageId(that.getMessageId());
         setBody(that.getBody());
         if (hasHeaders()) {

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultEventFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultEventFactory.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultEventFactory.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/management/DefaultEventFactory.java Sat Aug 29 12:21:47 2009
@@ -20,8 +20,8 @@
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
-import org.apache.camel.Route;
 import org.apache.camel.Processor;
+import org.apache.camel.Route;
 import org.apache.camel.management.event.CamelContextStartedEvent;
 import org.apache.camel.management.event.CamelContextStartingEvent;
 import org.apache.camel.management.event.CamelContextStoppedEvent;
@@ -29,9 +29,9 @@
 import org.apache.camel.management.event.ExchangeCompletedEvent;
 import org.apache.camel.management.event.ExchangeCreatedEvent;
 import org.apache.camel.management.event.ExchangeFailedEvent;
+import org.apache.camel.management.event.ExchangeFailureHandledEvent;
 import org.apache.camel.management.event.RouteStartedEvent;
 import org.apache.camel.management.event.RouteStoppedEvent;
-import org.apache.camel.management.event.ExchangeFailureHandledEvent;
 import org.apache.camel.spi.EventFactory;
 
 /**

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/processor/RedeliveryErrorHandler.java Sat Aug 29 12:21:47 2009
@@ -24,10 +24,10 @@
 import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
 import org.apache.camel.model.OnExceptionDefinition;
+import org.apache.camel.util.EventHelper;
 import org.apache.camel.util.ExchangeHelper;
 import org.apache.camel.util.MessageHelper;
 import org.apache.camel.util.ServiceHelper;
-import org.apache.camel.util.EventHelper;
 
 /**
  * Base redeliverable error handler that also supports a final dead letter queue in case

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/spi/EventFactory.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/spi/EventFactory.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/spi/EventFactory.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/spi/EventFactory.java Sat Aug 29 12:21:47 2009
@@ -20,8 +20,8 @@
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.Exchange;
-import org.apache.camel.Route;
 import org.apache.camel.Processor;
+import org.apache.camel.Route;
 
 /**
  * Factory to create {@link java.util.EventObject} events} that are emitted when such an event occur.

Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java
URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java (original)
+++ camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java Sat Aug 29 12:21:47 2009
@@ -433,17 +433,17 @@
      * @param newExchange  the new exchange
      */
     public static void prepareAggregation(Exchange oldExchange, Exchange newExchange) {
-        // copy body/header from OUT to IN
+        // move body/header from OUT to IN
         if (oldExchange != null) {
             if (oldExchange.hasOut()) {
-                oldExchange.getIn().copyFrom(oldExchange.getOut());
+                oldExchange.setIn(oldExchange.getOut());
                 oldExchange.setOut(null);
             }
         }
 
         if (newExchange != null) {
             if (newExchange.hasOut()) {
-                newExchange.getIn().copyFrom(newExchange.getOut());
+                newExchange.setIn(newExchange.getOut());
                 newExchange.setOut(null);
             }
         }

Modified: camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRoundtripHeaderTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRoundtripHeaderTest.java?rev=809122&r1=809121&r2=809122&view=diff
==============================================================================
--- camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRoundtripHeaderTest.java (original)
+++ camel/trunk/components/camel-jetty/src/test/java/org/apache/camel/component/jetty/HttpRoundtripHeaderTest.java Sat Aug 29 12:21:47 2009
@@ -57,7 +57,7 @@
     }
 
     @Test
-    public void testHttpRoundTripHeadersWithNoIngoredHeaders() throws Exception {
+    public void testHttpRoundTripHeadersWithNoIgnoredHeaders() throws Exception {
         MockEndpoint mockEndpoint = resolveMandatoryEndpoint("mock:results", MockEndpoint.class);
         mockEndpoint.expectedMessageCount(1);
 
@@ -85,7 +85,7 @@
                         String input = (String) exchange.getIn().getBody();
                         // append some text to invalidate Context-Length
                         // for the http reply
-                        exchange.getOut().setBody(input + outputText);
+                        exchange.getIn().setBody(input + outputText);
                     }
                 };
 
@@ -104,7 +104,7 @@
         Message in = exchange.getIn();
         assertNotNull("in", in);
         Map<String, Object> headers = in.getHeaders();
-        assertTrue("no headers are propagated", headers.isEmpty());
+        assertTrue("no headers are propagated", !headers.isEmpty());
         assertEquals("body has expectedText:" + expected, expected, in.getBody());
     }