Repository: camel
Updated Branches:
  refs/heads/camel-2.18.x 680220701 -> 1afb5b0a7
  refs/heads/camel-2.19.x 11c66e675 -> 0aeba63ac


https://stackoverflow.com/questions/43607569/simple-expression-in-sql-stored-component
 Added colon to Simple and parameter grammar


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

Branch: refs/heads/camel-2.19.x
Commit: c4d99ac146d5c3a6f9b18ba533c32800de410f91
Parents: 11c66e6
Author: Sami Nurminen <snurm...@gmail.com>
Authored: Tue May 2 20:39:01 2017 +0300
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Mon May 8 14:23:18 2017 +0200

----------------------------------------------------------------------
 .../sql/stored/template/grammar/sspt.jj         |  2 +-
 .../camel/component/sql/stored/ParserTest.java  | 21 ++++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/c4d99ac1/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/grammar/sspt.jj
----------------------------------------------------------------------
diff --git 
a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/grammar/sspt.jj
 
b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/grammar/sspt.jj
index 85a2f27..0ad95ed 100644
--- 
a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/grammar/sspt.jj
+++ 
b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/grammar/sspt.jj
@@ -142,7 +142,7 @@ TOKEN: {
 }
 
 TOKEN: {
-    <#SPECIAL: (["#","_","-","'",".","$","{","}","\"","[","]"])>
+    <#SPECIAL: ([":","#","_","-","'",".","$","{","}","\"","[","]"])>
 }
 
 TOKEN: {

http://git-wip-us.apache.org/repos/asf/camel/blob/c4d99ac1/components/camel-sql/src/test/java/org/apache/camel/component/sql/stored/ParserTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-sql/src/test/java/org/apache/camel/component/sql/stored/ParserTest.java
 
b/components/camel-sql/src/test/java/org/apache/camel/component/sql/stored/ParserTest.java
index 2534aed..ae807b2 100644
--- 
a/components/camel-sql/src/test/java/org/apache/camel/component/sql/stored/ParserTest.java
+++ 
b/components/camel-sql/src/test/java/org/apache/camel/component/sql/stored/ParserTest.java
@@ -22,6 +22,7 @@ import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.camel.Exchange;
+import org.apache.camel.component.properties.PropertiesComponent;
 import org.apache.camel.component.sql.stored.template.TemplateParser;
 import org.apache.camel.component.sql.stored.template.ast.InputParameter;
 import org.apache.camel.component.sql.stored.template.ast.OutParameter;
@@ -105,6 +106,26 @@ public class ParserTest extends CamelTestSupport {
     }
 
     @Test
+    public void colonInSimple() {
+
+        PropertiesComponent pc = (PropertiesComponent) 
context.getComponent("properties");
+        pc.setLocation("classpath:jndi.properties");
+        Exchange exchange = createExchangeWithBody(1);
+        Template template = parser.parseTemplate("ADDNUMBERS2(-1342 
${properties:java.naming.factory.initial})");
+        
assertEquals("org.apache.camel.util.jndi.CamelInitialContextFactory",((InputParameter)template.getParameterList().get(0)).getValueExtractor().eval(exchange,
 null));
+    }
+
+    @Test
+    public void colonInLocation() {
+        Template template = parser.parseTemplate("ADDNUMBERS2(-1342 :#a:)");
+        Exchange exchange = createExchangeWithBody(1);
+
+        Map container = new HashMap();
+        container.put("a:",1);
+        assertEquals(1, ((InputParameter) 
template.getParameterList().get(0)).getValueExtractor().eval(exchange, 
container));
+    }
+
+    @Test
     public void vendorSpecificPositiveSqlTypeOut() {
         Template template = parser.parseTemplate("ADDNUMBERS2(OUT 1342 h1)");
         assertEquals(1342, ((OutParameter) 
template.getParameterList().get(0)).getSqlType());

Reply via email to