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 2013/07/09 10:03:32 UTC

[1/4] git commit: Fixed CS

Updated Branches:
  refs/heads/camel-2.11.x be7118702 -> e75fc01c9
  refs/heads/master 372fd02a9 -> 44d44c53c


Fixed CS


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

Branch: refs/heads/master
Commit: ac7b3d618d8bd6b3a2e0797284a9269662be305b
Parents: 372fd02
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Jul 9 08:11:39 2013 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jul 9 08:11:39 2013 +0200

----------------------------------------------------------------------
 .../apache/camel/language/simple/SimpleParserExpressionTest.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/ac7b3d61/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
index 748600f..e48bffe 100644
--- a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
+++ b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
@@ -182,7 +182,7 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
     }
 
     // FIXME: see CAMEL-6414
-    public void _testSimpleParser() throws Exception {
+    public void xxxTestSimpleParser() throws Exception {
         exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
         exchange.getIn().setBody("THE MSG ID ${header.JMSMessageID} isA --");
 


[4/4] git commit: CAMEL-6414: The unary operators in Simple is now only applied on functions

Posted by da...@apache.org.
CAMEL-6414: The unary operators in Simple is now only applied on functions


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

Branch: refs/heads/camel-2.11.x
Commit: e75fc01c9fe3e5f2c6fd76261bf3489e5c7c17fe
Parents: b2a0f59
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Jul 9 10:01:43 2013 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jul 9 10:02:32 2013 +0200

----------------------------------------------------------------------
 .../camel/language/simple/SimpleTokenizer.java  | 21 +++++++++++++++++-
 .../simple/SimpleParserExpressionTest.java      | 23 ++++++++++++++++++--
 2 files changed, 41 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/e75fc01c/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java b/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
index f70a7d7..9d59507 100644
--- a/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
+++ b/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
@@ -22,6 +22,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
 import org.apache.camel.language.simple.types.SimpleToken;
 import org.apache.camel.language.simple.types.SimpleTokenType;
 import org.apache.camel.language.simple.types.TokenType;
+import org.apache.camel.util.ObjectHelper;
 
 /**
  * Tokenizer to create {@link SimpleToken} from the input.
@@ -203,7 +204,7 @@ public final class SimpleTokenizer {
         String text = expression.substring(index);
         for (SimpleTokenType token : KNOWN_TOKENS) {
             if (acceptType(token.getType(), filters)) {
-                if (text.startsWith(token.getValue())) {
+                if (acceptToken(token, text, expression, index)) {
                     return new SimpleToken(token, index);
                 }
             }
@@ -227,4 +228,22 @@ public final class SimpleTokenizer {
         return false;
     }
 
+    private static boolean acceptToken(SimpleTokenType token, String text, String expression, int index) {
+        if (token.isUnary() && text.startsWith(token.getValue())) {
+            // special check for unary as the previous must be a function end, and the next a whitespace
+            // to ensure unary operators is only applied on functions as intended
+            int len = token.getValue().length();
+            char previous = ' ';
+            if (index > 0) {
+                previous = expression.charAt(index - 1);
+            }
+            String after = text.substring(len);
+            boolean whiteSpace = ObjectHelper.isEmpty(after) || after.startsWith(" ");
+            boolean functionEnd = previous == '}';
+            return functionEnd && whiteSpace;
+        }
+
+        return text.startsWith(token.getValue());
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/e75fc01c/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
index 4b6e68d..d88f490 100644
--- a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
+++ b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
@@ -182,8 +182,7 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
         assertEquals("456", exp.evaluate(exchange, Object.class));
     }
 
-    // FIXME: see CAMEL-6414
-    public void xxxTestSimpleParser() throws Exception {
+    public void testUnaryLenient() throws Exception {
         exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
         exchange.getIn().setBody("THE MSG ID ${header.JMSMessageID} isA --");
 
@@ -192,4 +191,24 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
 
         assertEquals("THE MSG ID JMSMessageID-123 isA --", exp.evaluate(exchange, String.class));
     }
+
+    public void testUnaryLenient2() throws Exception {
+        exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
+        exchange.getIn().setBody("------------THE MSG ID ${header.JMSMessageID}------------");
+
+        SimpleExpressionParser parser = new SimpleExpressionParser("------------THE MSG ID ${header.JMSMessageID}------------", true);
+        Expression exp = parser.parseExpression();
+
+        assertEquals("------------THE MSG ID JMSMessageID-123------------", exp.evaluate(exchange, String.class));
+    }
+
+    public void testUnaryLenient3() throws Exception {
+        exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
+        exchange.getIn().setBody("------------ THE MSG ID ${header.JMSMessageID} ------------");
+
+        SimpleExpressionParser parser = new SimpleExpressionParser("------------ THE MSG ID ${header.JMSMessageID} ------------", true);
+        Expression exp = parser.parseExpression();
+
+        assertEquals("------------ THE MSG ID JMSMessageID-123 ------------", exp.evaluate(exchange, String.class));
+    }
 }


[2/4] git commit: CAMEL-6414: The unary operators in Simple is now only applied on functions

Posted by da...@apache.org.
CAMEL-6414: The unary operators in Simple is now only applied on functions


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

Branch: refs/heads/master
Commit: 44d44c53c9ba7648286d0bc700c46eacb129f4b6
Parents: ac7b3d6
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Jul 9 10:01:43 2013 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jul 9 10:01:43 2013 +0200

----------------------------------------------------------------------
 .../camel/language/simple/SimpleTokenizer.java  | 21 +++++++++++++++++-
 .../simple/SimpleParserExpressionTest.java      | 23 ++++++++++++++++++--
 2 files changed, 41 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/44d44c53/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
----------------------------------------------------------------------
diff --git a/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java b/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
index f70a7d7..9d59507 100644
--- a/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
+++ b/camel-core/src/main/java/org/apache/camel/language/simple/SimpleTokenizer.java
@@ -22,6 +22,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
 import org.apache.camel.language.simple.types.SimpleToken;
 import org.apache.camel.language.simple.types.SimpleTokenType;
 import org.apache.camel.language.simple.types.TokenType;
+import org.apache.camel.util.ObjectHelper;
 
 /**
  * Tokenizer to create {@link SimpleToken} from the input.
@@ -203,7 +204,7 @@ public final class SimpleTokenizer {
         String text = expression.substring(index);
         for (SimpleTokenType token : KNOWN_TOKENS) {
             if (acceptType(token.getType(), filters)) {
-                if (text.startsWith(token.getValue())) {
+                if (acceptToken(token, text, expression, index)) {
                     return new SimpleToken(token, index);
                 }
             }
@@ -227,4 +228,22 @@ public final class SimpleTokenizer {
         return false;
     }
 
+    private static boolean acceptToken(SimpleTokenType token, String text, String expression, int index) {
+        if (token.isUnary() && text.startsWith(token.getValue())) {
+            // special check for unary as the previous must be a function end, and the next a whitespace
+            // to ensure unary operators is only applied on functions as intended
+            int len = token.getValue().length();
+            char previous = ' ';
+            if (index > 0) {
+                previous = expression.charAt(index - 1);
+            }
+            String after = text.substring(len);
+            boolean whiteSpace = ObjectHelper.isEmpty(after) || after.startsWith(" ");
+            boolean functionEnd = previous == '}';
+            return functionEnd && whiteSpace;
+        }
+
+        return text.startsWith(token.getValue());
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/44d44c53/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
index e48bffe..4da2b9c 100644
--- a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
+++ b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
@@ -181,8 +181,7 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
         assertEquals("456", exp.evaluate(exchange, Object.class));
     }
 
-    // FIXME: see CAMEL-6414
-    public void xxxTestSimpleParser() throws Exception {
+    public void testUnaryLenient() throws Exception {
         exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
         exchange.getIn().setBody("THE MSG ID ${header.JMSMessageID} isA --");
 
@@ -191,4 +190,24 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
 
         assertEquals("THE MSG ID JMSMessageID-123 isA --", exp.evaluate(exchange, String.class));
     }
+
+    public void testUnaryLenient2() throws Exception {
+        exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
+        exchange.getIn().setBody("------------THE MSG ID ${header.JMSMessageID}------------");
+
+        SimpleExpressionParser parser = new SimpleExpressionParser("------------THE MSG ID ${header.JMSMessageID}------------", true);
+        Expression exp = parser.parseExpression();
+
+        assertEquals("------------THE MSG ID JMSMessageID-123------------", exp.evaluate(exchange, String.class));
+    }
+
+    public void testUnaryLenient3() throws Exception {
+        exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
+        exchange.getIn().setBody("------------ THE MSG ID ${header.JMSMessageID} ------------");
+
+        SimpleExpressionParser parser = new SimpleExpressionParser("------------ THE MSG ID ${header.JMSMessageID} ------------", true);
+        Expression exp = parser.parseExpression();
+
+        assertEquals("------------ THE MSG ID JMSMessageID-123 ------------", exp.evaluate(exchange, String.class));
+    }
 }


[3/4] git commit: Fixed CS

Posted by da...@apache.org.
Fixed CS


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

Branch: refs/heads/camel-2.11.x
Commit: b2a0f59753a03f3b292b1f9dad88eeace83f09c4
Parents: be71187
Author: Claus Ibsen <da...@apache.org>
Authored: Tue Jul 9 08:11:39 2013 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jul 9 10:02:25 2013 +0200

----------------------------------------------------------------------
 .../apache/camel/language/simple/SimpleParserExpressionTest.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/b2a0f597/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
----------------------------------------------------------------------
diff --git a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
index ecc03cf..4b6e68d 100644
--- a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
+++ b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserExpressionTest.java
@@ -183,7 +183,7 @@ public class SimpleParserExpressionTest extends ExchangeTestSupport {
     }
 
     // FIXME: see CAMEL-6414
-    public void _testSimpleParser() throws Exception {
+    public void xxxTestSimpleParser() throws Exception {
         exchange.getIn().setHeader("JMSMessageID", "JMSMessageID-123");
         exchange.getIn().setBody("THE MSG ID ${header.JMSMessageID} isA --");