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/11/01 16:10:16 UTC

[1/2] camel git commit: CAMEL-10431: camel-elslq Fix lookup for named parameter from headers

Repository: camel
Updated Branches:
  refs/heads/camel-2.18.x 6d68dac3d -> 8351873ee
  refs/heads/master 586f1413a -> e8cfbec69


CAMEL-10431: camel-elslq Fix lookup for named parameter from headers


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

Branch: refs/heads/master
Commit: e8cfbec699da0efa89c13c4fef0cc7e90d1b8aef
Parents: 586f141
Author: Tomas Turek <tt...@redhat.com>
Authored: Tue Nov 1 16:26:05 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Nov 1 12:08:52 2016 -0400

----------------------------------------------------------------------
 .../component/elsql/ElsqlSqlMapSource.java      |  2 +-
 .../elsql/ElSqlProducerBodySimpleTest.java      | 42 ++++++++++++++++++++
 .../src/test/resources/elsql/projects.elsql     |  4 ++
 3 files changed, 47 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/e8cfbec6/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java b/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
index eb489af..263ed8c 100644
--- a/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
+++ b/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
@@ -67,7 +67,7 @@ public class ElsqlSqlMapSource extends AbstractSqlParameterSource {
         } else {
             answer = bodyMap.get(paramName);
             if (answer == null) {
-                headersMap.get(paramName);
+                answer = headersMap.get(paramName);
             }
         }
         return answer;

http://git-wip-us.apache.org/repos/asf/camel/blob/e8cfbec6/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java b/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
index 63f2ed9..5fab274 100644
--- a/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
+++ b/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
@@ -16,11 +16,13 @@
  */
 package org.apache.camel.component.elsql;
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.component.sql.SqlConstants;
 import org.apache.camel.impl.JndiRegistry;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.After;
@@ -68,6 +70,42 @@ public class ElSqlProducerBodySimpleTest extends CamelTestSupport {
         assertEquals("Linux", row.get("PROJECT"));
     }
 
+    @Test
+    public void testBodyParameter() throws InterruptedException {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedMessageCount(1);
+        mock.message(0).body().isInstanceOf(List.class);
+        mock.message(0).header(SqlConstants.SQL_ROW_COUNT).isEqualTo(1);
+
+        template.sendBody("direct:parameters", Collections.singletonMap("id", 1));
+
+        mock.assertIsSatisfied();
+
+        List<?> received = mock.getReceivedExchanges().get(0).getIn().getBody(List.class);
+
+        Map<?, ?> row = assertIsInstanceOf(Map.class, received.get(0));
+
+        assertEquals("Camel", row.get("PROJECT"));
+    }
+
+    @Test
+    public void testHeadersParameter() throws InterruptedException {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedMessageCount(1);
+        mock.message(0).body().isInstanceOf(List.class);
+        mock.message(0).header(SqlConstants.SQL_ROW_COUNT).isEqualTo(1);
+
+        template.sendBodyAndHeader("direct:parameters", "", "id", 1);
+
+        mock.assertIsSatisfied();
+
+        List<?> received = mock.getReceivedExchanges().get(0).getIn().getBody(List.class);
+
+        Map<?, ?> row = assertIsInstanceOf(Map.class, received.get(0));
+
+        assertEquals("Camel", row.get("PROJECT"));
+    }
+
     @After
     public void tearDown() throws Exception {
         super.tearDown();
@@ -82,6 +120,10 @@ public class ElSqlProducerBodySimpleTest extends CamelTestSupport {
                 from("direct:simple")
                         .to("elsql:projectsByIdBody:elsql/projects.elsql?dataSource=#dataSource")
                         .to("mock:result");
+
+                from("direct:parameters")
+                        .to("elsql:projectById:elsql/projects.elsql?dataSource=#dataSource")
+                        .to("mock:result");
             }
         };
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/e8cfbec6/components/camel-elsql/src/test/resources/elsql/projects.elsql
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/test/resources/elsql/projects.elsql b/components/camel-elsql/src/test/resources/elsql/projects.elsql
index 74f16b9..470a33f 100644
--- a/components/camel-elsql/src/test/resources/elsql/projects.elsql
+++ b/components/camel-elsql/src/test/resources/elsql/projects.elsql
@@ -12,3 +12,7 @@
   SELECT *
   FROM projects
   ORDER BY id
+@NAME(projectById)
+  SELECT *
+  FROM projects
+  WHERE id = :id


[2/2] camel git commit: CAMEL-10431: camel-elslq Fix lookup for named parameter from headers

Posted by da...@apache.org.
CAMEL-10431: camel-elslq Fix lookup for named parameter from headers


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

Branch: refs/heads/camel-2.18.x
Commit: 8351873eec08322ddb7d0724a416f93501e482fd
Parents: 6d68dac
Author: Tomas Turek <tt...@redhat.com>
Authored: Tue Nov 1 16:26:05 2016 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Nov 1 12:09:13 2016 -0400

----------------------------------------------------------------------
 .../component/elsql/ElsqlSqlMapSource.java      |  2 +-
 .../elsql/ElSqlProducerBodySimpleTest.java      | 42 ++++++++++++++++++++
 .../src/test/resources/elsql/projects.elsql     |  4 ++
 3 files changed, 47 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/8351873e/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java b/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
index eb489af..263ed8c 100644
--- a/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
+++ b/components/camel-elsql/src/main/java/org/apache/camel/component/elsql/ElsqlSqlMapSource.java
@@ -67,7 +67,7 @@ public class ElsqlSqlMapSource extends AbstractSqlParameterSource {
         } else {
             answer = bodyMap.get(paramName);
             if (answer == null) {
-                headersMap.get(paramName);
+                answer = headersMap.get(paramName);
             }
         }
         return answer;

http://git-wip-us.apache.org/repos/asf/camel/blob/8351873e/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java b/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
index 63f2ed9..5fab274 100644
--- a/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
+++ b/components/camel-elsql/src/test/java/org/apache/camel/component/elsql/ElSqlProducerBodySimpleTest.java
@@ -16,11 +16,13 @@
  */
 package org.apache.camel.component.elsql;
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.component.sql.SqlConstants;
 import org.apache.camel.impl.JndiRegistry;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.After;
@@ -68,6 +70,42 @@ public class ElSqlProducerBodySimpleTest extends CamelTestSupport {
         assertEquals("Linux", row.get("PROJECT"));
     }
 
+    @Test
+    public void testBodyParameter() throws InterruptedException {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedMessageCount(1);
+        mock.message(0).body().isInstanceOf(List.class);
+        mock.message(0).header(SqlConstants.SQL_ROW_COUNT).isEqualTo(1);
+
+        template.sendBody("direct:parameters", Collections.singletonMap("id", 1));
+
+        mock.assertIsSatisfied();
+
+        List<?> received = mock.getReceivedExchanges().get(0).getIn().getBody(List.class);
+
+        Map<?, ?> row = assertIsInstanceOf(Map.class, received.get(0));
+
+        assertEquals("Camel", row.get("PROJECT"));
+    }
+
+    @Test
+    public void testHeadersParameter() throws InterruptedException {
+        MockEndpoint mock = getMockEndpoint("mock:result");
+        mock.expectedMessageCount(1);
+        mock.message(0).body().isInstanceOf(List.class);
+        mock.message(0).header(SqlConstants.SQL_ROW_COUNT).isEqualTo(1);
+
+        template.sendBodyAndHeader("direct:parameters", "", "id", 1);
+
+        mock.assertIsSatisfied();
+
+        List<?> received = mock.getReceivedExchanges().get(0).getIn().getBody(List.class);
+
+        Map<?, ?> row = assertIsInstanceOf(Map.class, received.get(0));
+
+        assertEquals("Camel", row.get("PROJECT"));
+    }
+
     @After
     public void tearDown() throws Exception {
         super.tearDown();
@@ -82,6 +120,10 @@ public class ElSqlProducerBodySimpleTest extends CamelTestSupport {
                 from("direct:simple")
                         .to("elsql:projectsByIdBody:elsql/projects.elsql?dataSource=#dataSource")
                         .to("mock:result");
+
+                from("direct:parameters")
+                        .to("elsql:projectById:elsql/projects.elsql?dataSource=#dataSource")
+                        .to("mock:result");
             }
         };
     }

http://git-wip-us.apache.org/repos/asf/camel/blob/8351873e/components/camel-elsql/src/test/resources/elsql/projects.elsql
----------------------------------------------------------------------
diff --git a/components/camel-elsql/src/test/resources/elsql/projects.elsql b/components/camel-elsql/src/test/resources/elsql/projects.elsql
index 74f16b9..470a33f 100644
--- a/components/camel-elsql/src/test/resources/elsql/projects.elsql
+++ b/components/camel-elsql/src/test/resources/elsql/projects.elsql
@@ -12,3 +12,7 @@
   SELECT *
   FROM projects
   ORDER BY id
+@NAME(projectById)
+  SELECT *
+  FROM projects
+  WHERE id = :id