This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit 28f7d4567bb6eb419ed245d171c783e8e727dfbb Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Sat Feb 27 21:41:07 2021 +0100 camel-core - Small optimization in pipeline --- .../src/main/java/org/apache/camel/processor/Pipeline.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java b/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java index aeb396d..0beeea6 100644 --- a/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java +++ b/core/camel-core-processor/src/main/java/org/apache/camel/processor/Pipeline.java @@ -57,7 +57,7 @@ public class Pipeline extends AsyncProcessorSupport implements Navigate<Processo private String id; private String routeId; - private final class PipelineTask implements Runnable { + private final class PipelineTask implements Runnable, AsyncCallback { private final Exchange exchange; private final AsyncCallback callback; @@ -70,6 +70,11 @@ public class Pipeline extends AsyncProcessorSupport implements Navigate<Processo } @Override + public void done(boolean doneSync) { + reactiveExecutor.schedule(this); + } + + @Override public void run() { boolean stop = exchange.isRouteStop(); int num = index.get(); @@ -87,7 +92,7 @@ public class Pipeline extends AsyncProcessorSupport implements Navigate<Processo // get the next processor AsyncProcessor processor = processors.get(index.getAndIncrement()); - processor.process(exchange, doneSync -> reactiveExecutor.schedule(this)); + processor.process(exchange, this); } else { ExchangeHelper.copyResults(exchange, exchange);