This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch 8958 in repository https://gitbox.apache.org/repos/asf/camel.git
commit d7ccd6d67a6e84248443a9a16d488b5753d62f47 Author: Claus Ibsen <[email protected]> AuthorDate: Mon Feb 5 09:58:20 2018 +0100 CAMEL-8958: Claim Check EIP with push/pop. Work in progress. --- .../org/apache/camel/model/ClaimCheckDefinition.java | 20 ++++++++++++++++++++ .../org/apache/camel/model/ClaimCheckOperation.java | 5 ++++- .../processor/ClaimCheckEipGetAndRemoveSetTest.java | 6 +++--- .../camel/processor/ClaimCheckEipGetSetTest.java | 6 +++--- .../processor/ClaimCheckEipPushPopBodyTest.java | 4 ++-- .../ClaimCheckEipPushPopHeadersPatternTest.java | 4 ++-- .../processor/ClaimCheckEipPushPopHeadersTest.java | 4 ++-- .../camel/processor/ClaimCheckEipPushPopTest.java | 4 ++-- 8 files changed, 38 insertions(+), 15 deletions(-) diff --git a/camel-core/src/main/java/org/apache/camel/model/ClaimCheckDefinition.java b/camel-core/src/main/java/org/apache/camel/model/ClaimCheckDefinition.java index 899c317..8b9080e 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ClaimCheckDefinition.java +++ b/camel-core/src/main/java/org/apache/camel/model/ClaimCheckDefinition.java @@ -32,6 +32,10 @@ import org.apache.camel.spi.RouteContext; import org.apache.camel.util.EndpointHelper; import org.apache.camel.util.ObjectHelper; +/** + * The Claim Check from the EIP patterns allows you to replace message content with a claim check (a unique key), + * which can be used to retrieve the message content at a later time. + */ @Metadata(label = "eip,routing") @XmlRootElement(name = "claimCheck") @XmlAccessorType(XmlAccessType.FIELD) @@ -110,6 +114,14 @@ public class ClaimCheckDefinition extends NoOutputDefinition<ClaimCheckDefinitio /** * The claim check operation to use. + * The following operations is supported: + * <ul> + * <li>Get</li> - Gets (does not remove) the claim check by the given key. + * <li>GetAndRemove</li> - Gets and remove the claim check by the given key. + * <li>Set</li> - Sets a new (will override if key already exists) claim check with the given key. + * <li>Push</li> - Sets a new claim check on the stack (does not use key). + * <li>Pop</li> - Gets the latest claim check from the stack (does not use key). + * </ul> */ public ClaimCheckDefinition operation(ClaimCheckOperation operation) { setOperation(operation); @@ -161,6 +173,14 @@ public class ClaimCheckDefinition extends NoOutputDefinition<ClaimCheckDefinitio return this; } + /** + * This option can be used to explicit declare the method name to use, when using POJOs as the AggregationStrategy. + */ + public ClaimCheckDefinition aggregationStrategyMethodName(String aggregationStrategyMethodName) { + setAggregationStrategyMethodName(aggregationStrategyMethodName); + return this; + } + // Properties //------------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/model/ClaimCheckOperation.java b/camel-core/src/main/java/org/apache/camel/model/ClaimCheckOperation.java index 5339351..f3b3ec1 100644 --- a/camel-core/src/main/java/org/apache/camel/model/ClaimCheckOperation.java +++ b/camel-core/src/main/java/org/apache/camel/model/ClaimCheckOperation.java @@ -19,10 +19,13 @@ package org.apache.camel.model; import javax.xml.bind.annotation.XmlEnum; import javax.xml.bind.annotation.XmlType; +/** + * Operations for the Claim Check EIP. + */ @XmlType @XmlEnum public enum ClaimCheckOperation { - get, getAndRemove, set, push, pop + Get, GetAndRemove, Set, Push, Pop } diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetAndRemoveSetTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetAndRemoveSetTest.java index 4c15369..5c234a7 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetAndRemoveSetTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetAndRemoveSetTest.java @@ -42,14 +42,14 @@ public class ClaimCheckEipGetAndRemoveSetTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.set, "foo") + .claimCheck(ClaimCheckOperation.Set, "foo") .transform().constant("Bye World") .to("mock:b") - .claimCheck(ClaimCheckOperation.getAndRemove, "foo") + .claimCheck(ClaimCheckOperation.GetAndRemove, "foo") .to("mock:c") .transform().constant("Hi World") .to("mock:d") - .claimCheck(ClaimCheckOperation.getAndRemove, "foo") + .claimCheck(ClaimCheckOperation.GetAndRemove, "foo") .to("mock:e"); } }; diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetSetTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetSetTest.java index 4714489..96b91e0 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetSetTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipGetSetTest.java @@ -41,14 +41,14 @@ public class ClaimCheckEipGetSetTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.set, "foo") + .claimCheck(ClaimCheckOperation.Set, "foo") .transform().constant("Bye World") .to("mock:b") - .claimCheck(ClaimCheckOperation.get, "foo") + .claimCheck(ClaimCheckOperation.Get, "foo") .to("mock:c") .transform().constant("Hi World") .to("mock:d") - .claimCheck(ClaimCheckOperation.get, "foo") + .claimCheck(ClaimCheckOperation.Get, "foo") .to("mock:e"); } }; diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopBodyTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopBodyTest.java index 045a1ea..3b2a5af 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopBodyTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopBodyTest.java @@ -42,12 +42,12 @@ public class ClaimCheckEipPushPopBodyTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.push) + .claimCheck(ClaimCheckOperation.Push) .transform().constant("Bye World") .setHeader("foo", constant(456)) .to("mock:b") // only merge in the message body - .claimCheck(ClaimCheckOperation.pop, null, "body") + .claimCheck(ClaimCheckOperation.Pop, null, "body") .to("mock:c"); } }; diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersPatternTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersPatternTest.java index 6ab71a7..7e2086e 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersPatternTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersPatternTest.java @@ -59,13 +59,13 @@ public class ClaimCheckEipPushPopHeadersPatternTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.push) + .claimCheck(ClaimCheckOperation.Push) .transform().constant("Bye World") .setHeader("foo", constant(456)) .removeHeader("bar") .to("mock:b") // only merge in the message headers - .claimCheck(ClaimCheckOperation.pop, null, "header:(foo|bar)") + .claimCheck(ClaimCheckOperation.Pop, null, "header:(foo|bar)") .to("mock:c"); } }; diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersTest.java index 354afce..fbbf961 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopHeadersTest.java @@ -42,12 +42,12 @@ public class ClaimCheckEipPushPopHeadersTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.push) + .claimCheck(ClaimCheckOperation.Push) .transform().constant("Bye World") .setHeader("foo", constant(456)) .to("mock:b") // only merge in the message headers - .claimCheck(ClaimCheckOperation.pop, null, "headers") + .claimCheck(ClaimCheckOperation.Pop, null, "headers") .to("mock:c"); } }; diff --git a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopTest.java b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopTest.java index fc18b29..ece3b64 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/ClaimCheckEipPushPopTest.java @@ -39,10 +39,10 @@ public class ClaimCheckEipPushPopTest extends ContextTestSupport { public void configure() throws Exception { from("direct:start") .to("mock:a") - .claimCheck(ClaimCheckOperation.push) + .claimCheck(ClaimCheckOperation.Push) .transform().constant("Bye World") .to("mock:b") - .claimCheck(ClaimCheckOperation.pop) + .claimCheck(ClaimCheckOperation.Pop) .to("mock:c"); } }; -- To stop receiving notification emails like this one, please contact [email protected].
