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 2019/04/17 09:41:35 UTC
[camel] 18/38: Move mock component out of camel-core. Work in
progress.
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch mock
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 75254855b3d09af3847f92774c8ffb9d3b9417a5
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 16 11:08:06 2019 +0200
Move mock component out of camel-core. Work in progress.
---
.../java/org/apache/camel/builder/ExpressionBuilder.java | 4 ++--
.../java/org/apache/camel/support/LanguageSupport.java | 16 ++++++++++++++++
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/core/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java b/core/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java
index cda166d..5901824 100644
--- a/core/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java
+++ b/core/camel-core/src/main/java/org/apache/camel/builder/ExpressionBuilder.java
@@ -45,7 +45,6 @@ import org.apache.camel.NoSuchLanguageException;
import org.apache.camel.NoTypeConversionAvailableException;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.RuntimeExchangeException;
-import org.apache.camel.language.simple.SimpleLanguage;
import org.apache.camel.model.language.MethodCallExpression;
import org.apache.camel.spi.ExchangeFormatter;
import org.apache.camel.spi.Language;
@@ -57,6 +56,7 @@ import org.apache.camel.support.ExchangeHelper;
import org.apache.camel.support.ExpressionAdapter;
import org.apache.camel.support.GroupIterator;
import org.apache.camel.support.GroupTokenIterator;
+import org.apache.camel.support.LanguageSupport;
import org.apache.camel.support.MessageHelper;
import org.apache.camel.support.processor.DefaultExchangeFormatter;
import org.apache.camel.util.FileUtil;
@@ -1970,7 +1970,7 @@ public final class ExpressionBuilder {
public static Expression simpleExpression(final String expression) {
return new ExpressionAdapter() {
public Object evaluate(Exchange exchange) {
- if (SimpleLanguage.hasSimpleFunction(expression)) {
+ if (LanguageSupport.hasSimpleFunction(expression)) {
// resolve language using context to have a clear separation of packages
// must call evaluate to return the nested language evaluate when evaluating
// stacked expressions
diff --git a/core/camel-support/src/main/java/org/apache/camel/support/LanguageSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/LanguageSupport.java
index ad0750c..31ebde8 100644
--- a/core/camel-support/src/main/java/org/apache/camel/support/LanguageSupport.java
+++ b/core/camel-support/src/main/java/org/apache/camel/support/LanguageSupport.java
@@ -32,6 +32,8 @@ public abstract class LanguageSupport implements Language, IsSingleton, CamelCon
public static final String RESOURCE = "resource:";
+ private static final String[] SIMPLE_FUNCTION_START = new String[]{"${", "$simple{"};
+
private CamelContext camelContext;
public CamelContext getCamelContext() {
@@ -73,4 +75,18 @@ public abstract class LanguageSupport implements Language, IsSingleton, CamelCon
}
return expression;
}
+
+ /**
+ * Does the expression include a simple function.
+ *
+ * @param expression the expression
+ * @return <tt>true</tt> if one or more simple function is included in the expression
+ */
+ public static boolean hasSimpleFunction(String expression) {
+ if (expression != null) {
+ return expression.contains(SIMPLE_FUNCTION_START[0]) || expression.contains(SIMPLE_FUNCTION_START[1]);
+ }
+ return false;
+ }
+
}