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 2016/03/14 19:29:29 UTC

[4/6] camel git commit: Make the CamelDataSetIndex header optional for producers

Make the CamelDataSetIndex header optional for producers


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/19785de1
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/19785de1
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/19785de1

Branch: refs/heads/master
Commit: 19785de10915fc12c19293191815acb11040b32d
Parents: acf06f7
Author: Quinn Stevenson <qu...@pronoia-solutions.com>
Authored: Thu Mar 10 13:35:14 2016 -0700
Committer: Claus Ibsen <da...@apache.org>
Committed: Mon Mar 14 19:23:15 2016 +0100

----------------------------------------------------------------------
 .../camel/component/dataset/DataSetEndpoint.java     | 15 +++++++++++----
 .../camel/component/dataset/DataSetProducerTest.java |  9 +++++++++
 2 files changed, 20 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/19785de1/camel-core/src/main/java/org/apache/camel/component/dataset/DataSetEndpoint.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/component/dataset/DataSetEndpoint.java b/camel-core/src/main/java/org/apache/camel/component/dataset/DataSetEndpoint.java
index 57559e8..008eb95 100644
--- a/camel-core/src/main/java/org/apache/camel/component/dataset/DataSetEndpoint.java
+++ b/camel-core/src/main/java/org/apache/camel/component/dataset/DataSetEndpoint.java
@@ -217,8 +217,13 @@ public class DataSetEndpoint extends MockEndpoint implements Service {
 
         // now let's assert that they are the same
         if (log.isDebugEnabled()) {
-            log.debug("Received message: {} (DataSet index={}) = {}",
-                    new Object[]{index, copy.getIn().getHeader(Exchange.DATASET_INDEX, Integer.class), copy});
+            if (null != copy.getIn().getHeader(Exchange.DATASET_INDEX)) {
+                log.debug("Received message: {} (DataSet index={}) = {}",
+                        new Object[]{index, copy.getIn().getHeader(Exchange.DATASET_INDEX, Integer.class), copy});
+            } else {
+                log.debug("Received message: {} = {}",
+                        new Object[]{index, copy});
+            }
         }
 
         assertMessageExpected(index, expected, copy);
@@ -229,8 +234,10 @@ public class DataSetEndpoint extends MockEndpoint implements Service {
     }
 
     protected void assertMessageExpected(long index, Exchange expected, Exchange actual) throws Exception {
-        long actualCounter = ExchangeHelper.getMandatoryHeader(actual, Exchange.DATASET_INDEX, Long.class);
-        assertEquals("Header: " + Exchange.DATASET_INDEX, index, actualCounter, actual);
+        if ( null != actual.getIn().getHeader(Exchange.DATASET_INDEX)) {
+            long actualCounter = ExchangeHelper.getMandatoryHeader(actual, Exchange.DATASET_INDEX, Long.class);
+            assertEquals("Header: " + Exchange.DATASET_INDEX, index, actualCounter, actual);
+        }
 
         getDataSet().assertMessageExpected(this, expected, actual, index);
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/19785de1/camel-core/src/test/java/org/apache/camel/component/dataset/DataSetProducerTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/component/dataset/DataSetProducerTest.java b/camel-core/src/test/java/org/apache/camel/component/dataset/DataSetProducerTest.java
index 5ae3a6f..de04767 100644
--- a/camel-core/src/test/java/org/apache/camel/component/dataset/DataSetProducerTest.java
+++ b/camel-core/src/test/java/org/apache/camel/component/dataset/DataSetProducerTest.java
@@ -48,4 +48,13 @@ public class DataSetProducerTest extends ContextTestSupport {
         assertMockEndpointsSatisfied();
     }
 
+    public void testSendingMessagesExplicitlyToDataSetEndpointWithoutDataSetIndex() throws Exception {
+        long size = dataSet.getSize();
+        for (long i = 0; i < size; i++) {
+            template.sendBody(dataSetUri, "<hello>world!</hello>");
+        }
+
+        assertMockEndpointsSatisfied();
+    }
+
 }
\ No newline at end of file