Return-Path: X-Original-To: apmail-camel-commits-archive@www.apache.org Delivered-To: apmail-camel-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D9DDB186A2 for ; Tue, 12 Jan 2016 11:01:52 +0000 (UTC) Received: (qmail 51982 invoked by uid 500); 12 Jan 2016 11:01:52 -0000 Delivered-To: apmail-camel-commits-archive@camel.apache.org Received: (qmail 51934 invoked by uid 500); 12 Jan 2016 11:01:52 -0000 Mailing-List: contact commits-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@camel.apache.org Delivered-To: mailing list commits@camel.apache.org Received: (qmail 51923 invoked by uid 99); 12 Jan 2016 11:01:52 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 Jan 2016 11:01:52 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 6F9B8DFD40; Tue, 12 Jan 2016 11:01:52 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: davsclaus@apache.org To: commits@camel.apache.org Date: Tue, 12 Jan 2016 11:01:53 -0000 Message-Id: In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [2/2] camel git commit: CAMEL-9504: OnCompletion - Keep caught exception so it can access the exception CAMEL-9504: OnCompletion - Keep caught exception so it can access the exception Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f56eafa0 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f56eafa0 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f56eafa0 Branch: refs/heads/camel-2.15.x Commit: f56eafa070a7491019dc668e5162ab216ce4d990 Parents: 4f0de9a Author: Claus Ibsen Authored: Tue Jan 12 11:59:34 2016 +0100 Committer: Claus Ibsen Committed: Tue Jan 12 12:01:40 2016 +0100 ---------------------------------------------------------------------- .../java/org/apache/camel/processor/OnCompletionProcessor.java | 5 +---- .../test/java/org/apache/camel/processor/OnCompletionTest.java | 1 + 2 files changed, 2 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/f56eafa0/camel-core/src/main/java/org/apache/camel/processor/OnCompletionProcessor.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/processor/OnCompletionProcessor.java b/camel-core/src/main/java/org/apache/camel/processor/OnCompletionProcessor.java index d46034b..bdd7080 100644 --- a/camel-core/src/main/java/org/apache/camel/processor/OnCompletionProcessor.java +++ b/camel-core/src/main/java/org/apache/camel/processor/OnCompletionProcessor.java @@ -127,9 +127,9 @@ public class OnCompletionProcessor extends ServiceSupport implements AsyncProces protected static void doProcess(Processor processor, Exchange exchange) { // must remember some properties which we cannot use during onCompletion processing // as otherwise we may cause issues + // but keep the caused exception stored as a property (Exchange.EXCEPTION_CAUGHT) on the exchange Object stop = exchange.removeProperty(Exchange.ROUTE_STOP); Object failureHandled = exchange.removeProperty(Exchange.FAILURE_HANDLED); - Object caught = exchange.removeProperty(Exchange.EXCEPTION_CAUGHT); Object errorhandlerHandled = exchange.removeProperty(Exchange.ERRORHANDLER_HANDLED); Object rollbackOnly = exchange.removeProperty(Exchange.ROLLBACK_ONLY); Object rollbackOnlyLast = exchange.removeProperty(Exchange.ROLLBACK_ONLY_LAST); @@ -149,9 +149,6 @@ public class OnCompletionProcessor extends ServiceSupport implements AsyncProces if (failureHandled != null) { exchange.setProperty(Exchange.FAILURE_HANDLED, failureHandled); } - if (caught != null) { - exchange.setProperty(Exchange.EXCEPTION_CAUGHT, caught); - } if (errorhandlerHandled != null) { exchange.setProperty(Exchange.ERRORHANDLER_HANDLED, errorhandlerHandled); } http://git-wip-us.apache.org/repos/asf/camel/blob/f56eafa0/camel-core/src/test/java/org/apache/camel/processor/OnCompletionTest.java ---------------------------------------------------------------------- diff --git a/camel-core/src/test/java/org/apache/camel/processor/OnCompletionTest.java b/camel-core/src/test/java/org/apache/camel/processor/OnCompletionTest.java index b29dc26..be4f05e 100644 --- a/camel-core/src/test/java/org/apache/camel/processor/OnCompletionTest.java +++ b/camel-core/src/test/java/org/apache/camel/processor/OnCompletionTest.java @@ -43,6 +43,7 @@ public class OnCompletionTest extends ContextTestSupport { public void testSynchronizeFailure() throws Exception { getMockEndpoint("mock:sync").expectedMessageCount(1); getMockEndpoint("mock:sync").expectedPropertyReceived(Exchange.ON_COMPLETION, true); + getMockEndpoint("mock:sync").message(0).exchangeProperty(Exchange.EXCEPTION_CAUGHT).isInstanceOf(IllegalArgumentException.class); MockEndpoint mock = getMockEndpoint("mock:result"); mock.expectedMessageCount(0);