You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2019/12/16 13:41:58 UTC
[camel] branch camel-3.0.x updated: CAMEL-14300: Java 8 Supplier
overloadings break all DSLs
This is an automated email from the ASF dual-hosted git repository.
lburgazzoli pushed a commit to branch camel-3.0.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.0.x by this push:
new 3ac9dec CAMEL-14300: Java 8 Supplier overloadings break all DSLs
3ac9dec is described below
commit 3ac9dec8923ead6bc96d2f15cfd0b907d57ed6b8
Author: lburgazzoli <lb...@gmail.com>
AuthorDate: Mon Dec 16 13:35:00 2019 +0100
CAMEL-14300: Java 8 Supplier overloadings break all DSLs
---
.../org/apache/camel/builder/ExpressionClause.java | 59 ++++++++++++----------
.../apache/camel/model/MulticastDefinition.java | 3 ++
.../apache/camel/model/ProcessorDefinition.java | 14 +++--
.../camel/model/RecipientListDefinition.java | 3 ++
.../org/apache/camel/model/SplitDefinition.java | 3 ++
.../org/apache/camel/model/WireTapDefinition.java | 6 +++
6 files changed, 56 insertions(+), 32 deletions(-)
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/builder/ExpressionClause.java b/core/camel-core-engine/src/main/java/org/apache/camel/builder/ExpressionClause.java
index a0cd5f2..beac72e 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/builder/ExpressionClause.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/builder/ExpressionClause.java
@@ -130,7 +130,10 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* A functional expression of an inbound message body
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public T body(final Supplier<Object> supplier) {
return delegate.expression(new ExpressionAdapter() {
public Object evaluate(Exchange exchange) {
@@ -217,7 +220,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* <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
* @return the builder to continue processing the DSL
*/
@@ -243,7 +246,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* <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
*/
@@ -256,7 +259,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* <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
@@ -284,7 +287,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* <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
@@ -296,7 +299,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates a <a href="http://camel.apache.org/groovy.html">Groovy
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -410,7 +413,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates an <a href="http://camel.apache.org/ognl.html">OGNL
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -432,7 +435,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates a <a href="http://camel.apache.org/ref-language.html">Ref
* expression</a>
- *
+ *
* @param ref refers to the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -443,7 +446,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates a <a href="http://camel.apache.org/spel.html">SpEL
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -454,7 +457,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates a <a href="http://camel.apache.org/simple.html">Simple
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -702,7 +705,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates an <a href="http://camel.apache.org/xpath.html">XPath
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -713,7 +716,7 @@ public class ExpressionClause<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
@@ -725,7 +728,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -738,7 +741,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -752,7 +755,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -766,7 +769,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -781,7 +784,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -794,7 +797,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -806,7 +809,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -818,7 +821,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates an <a href="http://camel.apache.org/xquery.html">XQuery
* expression</a>
- *
+ *
* @param text the expression to be evaluated
* @return the builder to continue processing the DSL
*/
@@ -829,7 +832,7 @@ public class ExpressionClause<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
@@ -841,7 +844,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -853,7 +856,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -867,7 +870,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -880,7 +883,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -895,7 +898,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
* 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
@@ -908,7 +911,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -920,7 +923,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* 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
@@ -931,7 +934,7 @@ public class ExpressionClause<T> implements Expression, Predicate {
/**
* Evaluates a given language name with the expression text
- *
+ *
* @param language the name of the language
* @param expression the expression in the given language
* @return the builder to continue processing the DSL
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/MulticastDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/MulticastDefinition.java
index 8a72687..d88db45 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/MulticastDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/MulticastDefinition.java
@@ -313,7 +313,10 @@ public class MulticastDefinition extends OutputDefinition<MulticastDefinition> i
*
* @param onPrepare the processor
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public MulticastDefinition onPrepare(Supplier<Processor> onPrepare) {
setOnPrepare(onPrepare.get());
return this;
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/ProcessorDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/ProcessorDefinition.java
index d28282f..2ef182d 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/ProcessorDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/ProcessorDefinition.java
@@ -2413,7 +2413,10 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
*
* @param processor the custom {@link Processor}
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public Type process(Supplier<Processor> processor) {
return process(processor.get());
}
@@ -2665,7 +2668,10 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
*
* @param supplier the supplier that provides a value to the IN message body
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public <Result> Type setBody(Supplier<Result> supplier) {
SetBodyDefinition answer = new SetBodyDefinition(new ExpressionAdapter() {
@Override
@@ -3088,7 +3094,7 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
* Enricher EIP</a> enriches an exchange with additional data obtained from
* a <code>resourceUri</code> and with an aggregation strategy created using
* a fluent builder. <blockquote>
- *
+ *
* <pre>
* {@code
* fom("direct:start")
@@ -3096,7 +3102,7 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
* .body(String.class, (o, n) -> n + o);
* }
* </pre>
- *
+ *
* </blockquote>
*
* @param resourceUri URI of resource endpoint for obtaining additional
@@ -3139,7 +3145,7 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
* Enricher EIP</a> enriches an exchange with additional data obtained from
* a <code>resourceUri</code> and with an aggregation strategy created using
* a fluent builder. <blockquote>
- *
+ *
* <pre>
* {@code
* fom("direct:start")
@@ -3147,7 +3153,7 @@ public abstract class ProcessorDefinition<Type extends ProcessorDefinition<Type>
* .body(String.class, (o, n) -> n + o);
* }
* </pre>
- *
+ *
* </blockquote>
*
* @param resourceUri URI of resource endpoint for obtaining additional
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/RecipientListDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/RecipientListDefinition.java
index 27a34b5..7326e5a 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/RecipientListDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/RecipientListDefinition.java
@@ -330,7 +330,10 @@ public class RecipientListDefinition<Type extends ProcessorDefinition<Type>> ext
*
* @param onPrepare the processor
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public RecipientListDefinition<Type> onPrepare(Supplier<Processor> onPrepare) {
setOnPrepare(onPrepare.get());
return this;
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/SplitDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/SplitDefinition.java
index 4b86e44..b8a95f3 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/SplitDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/SplitDefinition.java
@@ -304,7 +304,10 @@ public class SplitDefinition extends OutputExpressionNode implements ExecutorSer
*
* @param onPrepare the processor
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public SplitDefinition onPrepare(Supplier<Processor> onPrepare) {
setOnPrepare(onPrepare.get());
return this;
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/model/WireTapDefinition.java b/core/camel-core-engine/src/main/java/org/apache/camel/model/WireTapDefinition.java
index b3ece35..d99d339 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/model/WireTapDefinition.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/model/WireTapDefinition.java
@@ -220,7 +220,10 @@ public class WireTapDefinition<Type extends ProcessorDefinition<Type>> extends T
* @param processor processor preparing the new exchange to send
* @return the builder
* @see #newExchangeHeader(String, org.apache.camel.Expression)
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public WireTapDefinition<Type> newExchange(Supplier<Processor> processor) {
setNewExchangeProcessor(processor.get());
return this;
@@ -265,7 +268,10 @@ public class WireTapDefinition<Type extends ProcessorDefinition<Type>> extends T
*
* @param onPrepare the processor
* @return the builder
+ *
+ * @deprecated see https://issues.apache.org/jira/browse/CAMEL-14300
*/
+ @Deprecated
public WireTapDefinition<Type> onPrepare(Supplier<Processor> onPrepare) {
setOnPrepare(onPrepare.get());
return this;