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:43 UTC
[camel] 26/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 5ae35558be8cc17d9fef48d956f84170b42f9997
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Apr 16 16:54:53 2019 +0200
Move mock component out of camel-core. Work in progress.
---
.../camel/component/mock/MockExpressionClause.java | 587 ----------------
.../mock/MockExpressionClauseSupport.java | 737 +--------------------
.../component/mock/MockAssertionClauseTest.java | 6 +-
3 files changed, 11 insertions(+), 1319 deletions(-)
diff --git a/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClause.java b/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClause.java
index 4dec652..04178ec 100644
--- a/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClause.java
+++ b/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClause.java
@@ -27,7 +27,6 @@ import org.apache.camel.Message;
import org.apache.camel.Predicate;
import org.apache.camel.support.ExpressionAdapter;
import org.apache.camel.support.ExpressionToPredicateAdapter;
-import org.apache.camel.support.builder.xml.Namespaces;
import org.apache.camel.support.language.ExpressionModel;
/**
@@ -334,32 +333,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
* href="http://camel.apache.org/bean-language.html">bean language</a>
* which basically means the bean is invoked to determine the expression
* value.
- *
- * @param instance the instance of the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Object instance) {
- return delegate.method(instance);
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html">bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param beanType the Class of the bean which we want to invoke
- * @return the builder to continue processing the DSL
- */
- public T method(Class<?> beanType) {
- return delegate.method(beanType);
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html">bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
*
* @param bean the name of the bean looked up the registry
* @param method the name of the method to invoke on the bean
@@ -370,34 +343,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
}
/**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html">bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param instance the instance of the bean
- * @param method the name of the method to invoke on the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Object instance, String method) {
- return delegate.method(instance, method);
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html">bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param beanType the Class of the bean which we want to invoke
- * @param method the name of the method to invoke on the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Class<?> beanType, String method) {
- return delegate.method(beanType, method);
- }
-
- /**
* Evaluates a <a href="http://camel.apache.org/groovy.html">Groovy
* expression</a>
*
@@ -435,100 +380,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
}
/**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions) {
- return delegate.jsonpath(text, suppressExceptions);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, Class<?> resultType) {
- return delegate.jsonpath(text, resultType);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, Class<?> resultType) {
- return delegate.jsonpath(text, suppressExceptions, resultType);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, Class<?> resultType, String headerName) {
- return delegate.jsonpath(text, suppressExceptions, true, resultType, headerName);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text) {
- return delegate.jsonpathWriteAsString(text);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text, boolean suppressExceptions) {
- return delegate.jsonpathWriteAsString(text, suppressExceptions);
- }
-
- /**
- * Evaluates a <a
- * href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text, boolean suppressExceptions, String headerName) {
- return delegate.jsonpathWriteAsString(text, suppressExceptions, true, headerName);
- }
-
- /**
* Evaluates an <a href="http://camel.apache.org/ognl.html">OGNL
* expression</a>
*
@@ -584,228 +435,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
}
/**
- * Evaluates a <a href="http://camel.apache.org/simple.html">Simple
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param resultType the result type
- * @return the builder to continue processing the DSL
- */
- public T simple(String text, Class<?> resultType) {
- return delegate.simple(text, resultType);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token) {
- return delegate.tokenize(token);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex) {
- return tokenize(token, regex, false);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param skipFirst whether to skip the first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, boolean skipFirst) {
- return delegate.tokenize(token, null, regex, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, int group) {
- return tokenize(token, regex, group, false);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, String group) {
- return tokenize(token, regex, group, false);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param group to group by the given number
- * @param skipFirst whether to skip the first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, int group, boolean skipFirst) {
- return delegate.tokenize(token, null, regex, group, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param group to group by the given number
- * @param skipFirst whether to skip the first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, String group, boolean skipFirst) {
- return delegate.tokenize(token, null, regex, group, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, int group) {
- return delegate.tokenize(token, group);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param group to group by the given number
- * @param skipFirst whether to skip the first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, int group, boolean skipFirst) {
- return delegate.tokenize(token, group, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName) {
- return delegate.tokenize(token, headerName);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex) {
- return delegate.tokenize(token, headerName, regex);
- }
-
- /**
- * Evaluates a token pair expression on the message body.
- * <p/>
- * Tokens is not included.
- *
- * @param startToken the start token
- * @param endToken the end token
- * @return the builder to continue processing the DSL
- */
- public T tokenizePair(String startToken, String endToken) {
- return tokenizePair(startToken, endToken, false);
- }
-
- /**
- * Evaluates a token pair expression on the message body
- *
- * @param startToken the start token
- * @param endToken the end token
- * @param includeTokens whether to include tokens
- * @return the builder to continue processing the DSL
- */
- public T tokenizePair(String startToken, String endToken, boolean includeTokens) {
- return delegate.tokenizePair(startToken, endToken, includeTokens);
- }
-
- /**
- * Evaluates a XML token expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXML(String tagName) {
- return tokenizeXML(tagName, null);
- }
-
- /**
- * Evaluates a XML token expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXML(String tagName, int group) {
- return tokenizeXML(tagName, null, group);
- }
-
- /**
- * Evaluates a token pair expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @param inheritNamespaceTagName parent or root tag name that contains namespace(s) to inherit
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXML(String tagName, String inheritNamespaceTagName) {
- return tokenizeXML(tagName, inheritNamespaceTagName, 0);
- }
-
- /**
- * Evaluates a token pair expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @param inheritNamespaceTagName parent or root tag name that contains namespace(s) to inherit
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXML(String tagName, String inheritNamespaceTagName, int group) {
- return delegate.tokenizeXMLPair(tagName, inheritNamespaceTagName, group);
- }
-
- public T xtokenize(String path, Namespaces namespaces) {
- return xtokenize(path, 'i', namespaces);
- }
-
- public T xtokenize(String path, char mode, Namespaces namespaces) {
- return xtokenize(path, mode, namespaces, 0);
- }
-
- public T xtokenize(String path, char mode, Namespaces namespaces, int group) {
- return delegate.xtokenize(path, mode, namespaces, group);
- }
-
- /**
* Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
* expression</a>
*
@@ -815,113 +444,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
public T xpath(String text) {
return delegate.xpath(text);
}
-
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> on the supplied header name's contents
- *
- * @param text the expression to be evaluated
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, String headerName) {
- return delegate.xpath(text, headerName);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType) {
- return delegate.xpath(text, resultType);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type on the supplied
- * header name's contents
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, String headerName) {
- return delegate.xpath(text, resultType, headerName);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Namespaces namespaces) {
- return delegate.xpath(text, resultType, namespaces);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs on the supplied header name's contents
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @param namespaces the namespace prefix and URIs to use
- *
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Namespaces namespaces, String headerName) {
- return delegate.xpath(text, resultType, namespaces, headerName);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Map<String, String> namespaces) {
- return delegate.xpath(text, resultType, namespaces);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Namespaces namespaces) {
- return delegate.xpath(text, namespaces);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Map<String, String> namespaces) {
- return delegate.xpath(text, namespaces);
- }
/**
* Evaluates an <a
@@ -935,115 +457,6 @@ public class MockExpressionClause<T> implements Expression, Predicate {
}
/**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> on the supplied header name's contents
- *
- * @param text the expression to be evaluated
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, String headerName) {
- return delegate.xquery(text, headerName);
- }
-
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType) {
- return delegate.xquery(text, resultType);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, String headerName) {
- return delegate.xquery(text, resultType, headerName);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type and set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Namespaces namespaces) {
- return delegate.xquery(text, resultType, namespaces);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @param namespaces the namespace prefix and URIs to use
- *
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Namespaces namespaces, String headerName) {
- return delegate.xquery(text, resultType, namespaces, headerName);
- }
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type and set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Map<String, String> namespaces) {
- return delegate.xquery(text, resultType, namespaces);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Namespaces namespaces) {
- return delegate.xquery(text, namespaces);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Map<String, String> namespaces) {
- return delegate.xquery(text, namespaces);
- }
-
- /**
* Evaluates a given language name with the expression text
*
* @param language the name of the language
diff --git a/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClauseSupport.java b/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClauseSupport.java
index b3f81e6..35795b0 100644
--- a/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClauseSupport.java
+++ b/core/camel-core/src/main/java/org/apache/camel/component/mock/MockExpressionClauseSupport.java
@@ -16,20 +16,9 @@
*/
package org.apache.camel.component.mock;
-import java.util.Map;
-
import org.apache.camel.CamelContext;
import org.apache.camel.Expression;
-import org.apache.camel.model.language.JsonPathExpression;
-import org.apache.camel.model.language.LanguageExpression;
-import org.apache.camel.model.language.MethodCallExpression;
-import org.apache.camel.model.language.SimpleExpression;
-import org.apache.camel.model.language.TokenizerExpression;
-import org.apache.camel.model.language.XMLTokenizerExpression;
-import org.apache.camel.model.language.XPathExpression;
-import org.apache.camel.model.language.XQueryExpression;
import org.apache.camel.support.builder.ExpressionBuilder;
-import org.apache.camel.support.builder.xml.Namespaces;
import org.apache.camel.support.language.ExpressionModel;
/**
@@ -37,8 +26,6 @@ import org.apache.camel.support.language.ExpressionModel;
*/
public class MockExpressionClauseSupport<T> {
- // TODO: make the model.language class not here as we want to use this in camel-mock but have similar method api compatability
-
private T result;
private Expression expressionValue;
private ExpressionModel expressionType;
@@ -206,66 +193,16 @@ public class MockExpressionClauseSupport<T> {
* which basically means the bean is invoked to determine the expression
* value.
*
- * @param instance the instance of the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Object instance) {
- return expression(new MethodCallExpression(instance));
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html>bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param beanType the Class of the bean which we want to invoke
- * @return the builder to continue processing the DSL
- */
- public T method(Class<?> beanType) {
- return expression(new MethodCallExpression(beanType));
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html>bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
* @param bean the name of the bean looked up the registry
* @param method the name of the method to invoke on the bean
* @return the builder to continue processing the DSL
*/
public T method(String bean, String method) {
- return expression(new MethodCallExpression(bean, method));
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html>bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param instance the instance of the bean
- * @param method the name of the method to invoke on the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Object instance, String method) {
- return expression(new MethodCallExpression(instance, method));
- }
-
- /**
- * Evaluates an expression using the <a
- * href="http://camel.apache.org/bean-language.html>bean language</a>
- * which basically means the bean is invoked to determine the expression
- * value.
- *
- * @param beanType the Class of the bean which we want to invoke
- * @param method the name of the method to invoke on the bean
- * @return the builder to continue processing the DSL
- */
- public T method(Class<?> beanType, String method) {
- return expression(new MethodCallExpression(beanType, method));
+ if (method != null) {
+ return expression(ExpressionBuilder.languageExpression("bean", bean + "?method=" + method));
+ } else {
+ return method(bean);
+ }
}
/**
@@ -305,170 +242,6 @@ public class MockExpressionClauseSupport<T> {
}
/**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setSuppressExceptions(suppressExceptions);
- return expression(expression);
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param allowSimple whether to allow in inlined simple exceptions in the json path expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, boolean allowSimple) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setAllowSimple(allowSimple);
- return expression(expression);
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, Class<?> resultType) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, Class<?> resultType) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param allowSimple whether to allow in inlined simple exceptions in the json path expression
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, boolean allowSimple, Class<?> resultType) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setAllowSimple(allowSimple);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param allowSimple whether to allow in inlined simple exceptions in the json path expression
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T jsonpath(String text, boolean suppressExceptions, boolean allowSimple, Class<?> resultType, String headerName) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setAllowSimple(allowSimple);
- expression.setResultType(resultType);
- expression.setHeaderName(headerName);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text) {
- return jsonpathWriteAsString(text, false);
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text, boolean suppressExceptions) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setWriteAsString(true);
- expression.setSuppressExceptions(suppressExceptions);
- return expression(expression);
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param allowSimple whether to allow in inlined simple exceptions in the json path expression
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text, boolean suppressExceptions, boolean allowSimple) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setWriteAsString(true);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setAllowSimple(allowSimple);
- return expression(expression);
- }
-
- /**
- * Evaluates a <a href="http://camel.apache.org/jsonpath.html">Json Path
- * expression</a> with writeAsString enabled.
- *
- * @param text the expression to be evaluated
- * @param suppressExceptions whether to suppress exceptions such as PathNotFoundException
- * @param allowSimple whether to allow in inlined simple exceptions in the json path expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T jsonpathWriteAsString(String text, boolean suppressExceptions, boolean allowSimple, String headerName) {
- JsonPathExpression expression = new JsonPathExpression(text);
- expression.setWriteAsString(true);
- expression.setSuppressExceptions(suppressExceptions);
- expression.setAllowSimple(allowSimple);
- expression.setHeaderName(headerName);
- return expression(expression);
- }
-
- /**
* Evaluates an <a href="http://camel.apache.org/ognl.html">OGNL
* expression</a>
*
@@ -524,21 +297,6 @@ public class MockExpressionClauseSupport<T> {
}
/**
- * Evaluates a <a href="http://camel.apache.org/simple.html">Simple
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param resultType the result type
- * @return the builder to continue processing the DSL
- */
- public T simple(String text, Class<?> resultType) {
- SimpleExpression expression = new SimpleExpression(text);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
- /**
* Evaluates an <a href="http://camel.apache.org/hl7.html">HL7 Terser
* expression</a>
*
@@ -550,226 +308,6 @@ public class MockExpressionClauseSupport<T> {
}
/**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token) {
- return tokenize(token, null, false);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, int group) {
- return tokenize(token, null, false, group);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param group to group by the given number
- * @param skipFirst whether to skip the very first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, int group, boolean skipFirst) {
- return tokenize(token, null, false, group, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex) {
- return tokenize(token, null, regex);
- }
-
- /**
- * Evaluates a token expression on the message body
- *
- * @param token the token
- * @param regex whether the token is a regular expression or not
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, boolean regex, int group) {
- return tokenize(token, null, regex, group);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName) {
- return tokenize(token, headerName, false);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex) {
- TokenizerExpression expression = new TokenizerExpression();
- expression.setToken(token);
- expression.setHeaderName(headerName);
- expression.setRegex(regex);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @param group to group by number of parts
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex, int group) {
- return tokenize(token, headerName, regex, group, false);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @param skipFirst whether to skip the very first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex, boolean skipFirst) {
- TokenizerExpression expression = new TokenizerExpression();
- expression.setToken(token);
- expression.setHeaderName(headerName);
- expression.setRegex(regex);
- expression.setSkipFirst(skipFirst);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @param group to group by number of parts
- * @param skipFirst whether to skip the very first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex, int group, boolean skipFirst) {
- return tokenize(token, headerName, regex, "" + group, skipFirst);
- }
-
- /**
- * Evaluates a token expression on the given header
- *
- * @param token the token
- * @param headerName name of header to tokenize
- * @param regex whether the token is a regular expression or not
- * @param group to group by number of parts
- * @param skipFirst whether to skip the very first element
- * @return the builder to continue processing the DSL
- */
- public T tokenize(String token, String headerName, boolean regex, String group, boolean skipFirst) {
- TokenizerExpression expression = new TokenizerExpression();
- expression.setToken(token);
- expression.setHeaderName(headerName);
- expression.setRegex(regex);
- expression.setGroup(group);
- expression.setSkipFirst(skipFirst);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a token pair expression on the message body
- *
- * @param startToken the start token
- * @param endToken the end token
- * @param includeTokens whether to include tokens
- * @return the builder to continue processing the DSL
- */
- public T tokenizePair(String startToken, String endToken, boolean includeTokens) {
- TokenizerExpression expression = new TokenizerExpression();
- expression.setToken(startToken);
- expression.setEndToken(endToken);
- expression.setIncludeTokens(includeTokens);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates a token pair expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @param inheritNamespaceTagName optional parent or root tag name that contains namespace(s) to inherit
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXMLPair(String tagName, String inheritNamespaceTagName, int group) {
- return tokenizeXMLPair(tagName, inheritNamespaceTagName, "" + group);
- }
-
- /**
- * Evaluates a token pair expression on the message body with XML content
- *
- * @param tagName the tag name of the child nodes to tokenize
- * @param inheritNamespaceTagName optional parent or root tag name that contains namespace(s) to inherit
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T tokenizeXMLPair(String tagName, String inheritNamespaceTagName, String group) {
- TokenizerExpression expression = new TokenizerExpression();
- expression.setToken(tagName);
- expression.setInheritNamespaceTagName(inheritNamespaceTagName);
- expression.setXml(true);
- expression.setGroup(group);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates an XML token expression on the message body with XML content
- *
- * @param path the xpath like path notation specifying the child nodes to tokenize
- * @param mode one of 'i', 'w', or 'u' to inject the namespaces to the token, to
- * wrap the token with its ancestor contet, or to unwrap to its element child
- * @param namespaces the namespace map to the namespace bindings
- * @param group to group by the given number
- * @return the builder to continue processing the DSL
- */
- public T xtokenize(String path, char mode, Namespaces namespaces, int group) {
- XMLTokenizerExpression expression = new XMLTokenizerExpression(path);
- expression.setMode(Character.toString(mode));
- expression.setNamespaces(namespaces.getNamespaces());
-
- if (group > 0) {
- expression.setGroup(group);
- }
- setExpressionType(expression);
- return result;
- }
-
- /**
* Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
* expression</a>
*
@@ -777,135 +315,7 @@ public class MockExpressionClauseSupport<T> {
* @return the builder to continue processing the DSL
*/
public T xpath(String text) {
- return expression(new XPathExpression(text));
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> on the supplied header name's contents
- *
- * @param text the expression to be evaluated
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, String headerName) {
- XPathExpression expression = new XPathExpression(text);
- expression.setHeaderName(headerName);
- return expression(expression);
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType) {
- XPathExpression expression = new XPathExpression(text);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type on the supplied
- * header name's contents
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, String headerName) {
- XPathExpression expression = new XPathExpression(text);
- expression.setHeaderName(headerName);
- setExpressionType(expression);
- return result;
- }
-
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Namespaces namespaces) {
- return xpath(text, resultType, namespaces.getNamespaces());
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs on the supplied header name's contents
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Namespaces namespaces, String headerName) {
- XPathExpression expression = new XPathExpression(text);
- expression.setResultType(resultType);
- expression.setNamespaces(namespaces.getNamespaces());
- expression.setHeaderName(headerName);
- setExpressionType(expression);
- return result;
- }
-
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified result type and set of namespace
- * prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Class<?> resultType, Map<String, String> namespaces) {
- XPathExpression expression = new XPathExpression(text);
- expression.setResultType(resultType);
- expression.setNamespaces(namespaces);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Namespaces namespaces) {
- return xpath(text, namespaces.getNamespaces());
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
- * expression</a> with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xpath(String text, Map<String, String> namespaces) {
- XPathExpression expression = new XPathExpression(text);
- expression.setNamespaces(namespaces);
- setExpressionType(expression);
- return result;
+ return expression(ExpressionBuilder.languageExpression("xpath", text));
}
/**
@@ -916,136 +326,7 @@ public class MockExpressionClauseSupport<T> {
* @return the builder to continue processing the DSL
*/
public T xquery(String text) {
- return expression(new XQueryExpression(text));
- }
-
- /**
- * Evaluates an <a href="http://camel.apache.org/xquery.html">XQuery
- * expression</a>
- *
- * @param text the expression to be evaluated
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, String headerName) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setHeaderName(headerName);
- return expression(expression);
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setResultType(resultType);
- setExpressionType(expression);
- return result;
- }
-
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, String headerName) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setHeaderName(headerName);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type and set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Namespaces namespaces) {
- return xquery(text, resultType, namespaces.getNamespaces());
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type and set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @param headerName the name of the header to apply the expression to
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Namespaces namespaces, String headerName) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setResultType(resultType);
- expression.setNamespaces(namespaces.getNamespaces());
- expression.setHeaderName(headerName);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified result type and set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param resultType the return type expected by the expression
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Class<?> resultType, Map<String, String> namespaces) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setResultType(resultType);
- expression.setNamespaces(namespaces);
- setExpressionType(expression);
- return result;
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Namespaces namespaces) {
- return xquery(text, namespaces.getNamespaces());
- }
-
- /**
- * Evaluates an <a
- * href="http://camel.apache.org/xquery.html">XQuery expression</a>
- * with the specified set of namespace prefixes and URIs
- *
- * @param text the expression to be evaluated
- * @param namespaces the namespace prefix and URIs to use
- * @return the builder to continue processing the DSL
- */
- public T xquery(String text, Map<String, String> namespaces) {
- XQueryExpression expression = new XQueryExpression(text);
- expression.setNamespaces(namespaces);
- setExpressionType(expression);
- return result;
+ return expression(ExpressionBuilder.languageExpression("xquery", text));
}
/**
@@ -1056,9 +337,7 @@ public class MockExpressionClauseSupport<T> {
* @return the builder to continue processing the DSL
*/
public T language(String language, String expression) {
- LanguageExpression exp = new LanguageExpression(language, expression);
- setExpressionType(exp);
- return result;
+ return expression(ExpressionBuilder.languageExpression(language, expression));
}
// Properties
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/mock/MockAssertionClauseTest.java b/core/camel-core/src/test/java/org/apache/camel/component/mock/MockAssertionClauseTest.java
index 1118342..127098b 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/mock/MockAssertionClauseTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/mock/MockAssertionClauseTest.java
@@ -25,7 +25,7 @@ public class MockAssertionClauseTest extends ContextTestSupport {
@Test
public void testAssertionClauseAll() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:result");
- mock.allMessages().xpath("/person[@name='James']", Boolean.class);
+ mock.allMessages().xpath("/person[@name='James']");
template.sendBody("direct:start", "<person name='James' last='Hanson'/>");
template.sendBody("direct:start", "<person name='James' last='Jackson'/>");
@@ -37,10 +37,10 @@ public class MockAssertionClauseTest extends ContextTestSupport {
public void testAssertionClausePer() throws Exception {
MockEndpoint mock = getMockEndpoint("mock:result");
- mock.message(0).xpath("/person[@last='Hanson']", Boolean.class);
+ mock.message(0).xpath("/person[@last='Hanson']");
mock.message(0).body().contains("Hanson");
- mock.message(1).xpath("/person[@last='Jackson']", Boolean.class);
+ mock.message(1).xpath("/person[@last='Jackson']");
mock.message(1).body().contains("Jackson");
template.sendBody("direct:start", "<person name='James' last='Hanson'/>");