This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch exchange-factory
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/exchange-factory by this push:
new ae24d55 CAMEL-16222: PooledExchangeFactory experiment
ae24d55 is described below
commit ae24d55321742645081770ae1445ab4097cde8a6
Author: Claus Ibsen <[email protected]>
AuthorDate: Sun Feb 21 10:15:26 2021 +0100
CAMEL-16222: PooledExchangeFactory experiment
---
.../org/apache/camel/component/beanstalk/BeanstalkConsumer.java | 3 +--
.../org/apache/camel/support/component/ApiConsumerHelper.java | 8 ++++----
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git
a/components/camel-beanstalk/src/main/java/org/apache/camel/component/beanstalk/BeanstalkConsumer.java
b/components/camel-beanstalk/src/main/java/org/apache/camel/component/beanstalk/BeanstalkConsumer.java
index b652e9e..a4ae7db 100644
---
a/components/camel-beanstalk/src/main/java/org/apache/camel/component/beanstalk/BeanstalkConsumer.java
+++
b/components/camel-beanstalk/src/main/java/org/apache/camel/component/beanstalk/BeanstalkConsumer.java
@@ -24,7 +24,6 @@ import com.surftools.BeanstalkClient.BeanstalkException;
import com.surftools.BeanstalkClient.Client;
import com.surftools.BeanstalkClient.Job;
import org.apache.camel.Exchange;
-import org.apache.camel.ExchangePattern;
import org.apache.camel.ExtendedExchange;
import org.apache.camel.Processor;
import org.apache.camel.RuntimeCamelException;
@@ -92,7 +91,7 @@ public class BeanstalkConsumer extends ScheduledPollConsumer {
LOG.debug(String.format("Received job ID %d (data length
%d)", job.getJobId(), job.getData().length));
}
- final Exchange exchange =
getEndpoint().createExchange(ExchangePattern.InOnly);
+ final Exchange exchange = createExchange(true);
exchange.getIn().setHeader(Headers.JOB_ID, job.getJobId());
exchange.getIn().setBody(job.getData(), byte[].class);
diff --git
a/core/camel-support/src/main/java/org/apache/camel/support/component/ApiConsumerHelper.java
b/core/camel-support/src/main/java/org/apache/camel/support/component/ApiConsumerHelper.java
index 8de5649..adaaa13 100644
---
a/core/camel-support/src/main/java/org/apache/camel/support/component/ApiConsumerHelper.java
+++
b/core/camel-support/src/main/java/org/apache/camel/support/component/ApiConsumerHelper.java
@@ -139,11 +139,10 @@ public final class ApiConsumerHelper {
T extends DefaultConsumer & ResultInterceptor> void
processResult(T consumer, Object methodResult, Object result)
throws Exception {
- Exchange exchange = consumer.getEndpoint().createExchange();
- exchange.getIn().setBody(result);
-
- consumer.interceptResult(methodResult, exchange);
+ Exchange exchange = consumer.createExchange(false);
try {
+ exchange.getIn().setBody(result);
+ consumer.interceptResult(methodResult, exchange);
// send message to next processor in the route
consumer.getProcessor().process(exchange);
} finally {
@@ -152,6 +151,7 @@ public final class ApiConsumerHelper {
if (exception != null) {
consumer.getExceptionHandler().handleException("Error
processing exchange", exchange, exception);
}
+ consumer.releaseExchange(exchange, false);
}
}
}