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 673e155 CAMEL-16222: PooledExchangeFactory experiment 673e155 is described below commit 673e155fb90613381474cde9fb63b08af2ba748b Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon Feb 22 17:19:10 2021 +0100 CAMEL-16222: PooledExchangeFactory experiment --- .../apache/camel/websocket/jsr356/JSR356Consumer.java | 2 +- .../camel/component/websocket/WebsocketConsumer.java | 2 +- .../wordpress/consumer/AbstractWordpressConsumer.java | 17 +++++++---------- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/components/camel-websocket-jsr356/src/main/java/org/apache/camel/websocket/jsr356/JSR356Consumer.java b/components/camel-websocket-jsr356/src/main/java/org/apache/camel/websocket/jsr356/JSR356Consumer.java index 82fdba8..ee43004 100644 --- a/components/camel-websocket-jsr356/src/main/java/org/apache/camel/websocket/jsr356/JSR356Consumer.java +++ b/components/camel-websocket-jsr356/src/main/java/org/apache/camel/websocket/jsr356/JSR356Consumer.java @@ -34,7 +34,7 @@ public class JSR356Consumer extends DefaultConsumer { private Runnable closeTask; private final BiConsumer<Session, Object> onMessage = (session, message) -> { - final Exchange exchange = getEndpoint().createExchange(); + final Exchange exchange = createExchange(true); exchange.getIn().setHeader(JSR356Constants.SESSION, session); exchange.getIn().setBody(message); getAsyncProcessor().process(exchange, doneSync -> { diff --git a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketConsumer.java b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketConsumer.java index 90cb62f..80a5f31 100644 --- a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketConsumer.java +++ b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketConsumer.java @@ -65,7 +65,7 @@ public class WebsocketConsumer extends DefaultConsumer implements WebsocketProdu final Object message, final InetSocketAddress remote) { - final Exchange exchange = getEndpoint().createExchange(); + final Exchange exchange = createExchange(true); // set header and body exchange.getIn().setHeader(WebsocketConstants.REMOTE_ADDRESS, remote); diff --git a/components/camel-wordpress/src/main/java/org/apache/camel/component/wordpress/consumer/AbstractWordpressConsumer.java b/components/camel-wordpress/src/main/java/org/apache/camel/component/wordpress/consumer/AbstractWordpressConsumer.java index c579fc5..9f403a7 100644 --- a/components/camel-wordpress/src/main/java/org/apache/camel/component/wordpress/consumer/AbstractWordpressConsumer.java +++ b/components/camel-wordpress/src/main/java/org/apache/camel/component/wordpress/consumer/AbstractWordpressConsumer.java @@ -64,26 +64,23 @@ public abstract class AbstractWordpressConsumer extends ScheduledPollConsumer { * @param configuration the endpoint configuration */ protected void configureService(WordpressConfiguration configuration) { - + // noop } @Override protected abstract int poll() throws Exception; - /** - * Message processor - * - * @param result - */ protected final void process(final Object result) { - Exchange exchange = getEndpoint().createExchange(); + Exchange exchange = createExchange(false); try { exchange.getIn().setBody(result); getProcessor().process(exchange); } catch (Exception e) { - if (exchange.getException() != null) { - getExceptionHandler().handleException("Error processing exchange", exchange, exchange.getException()); - } + exchange.setException(e); + } + if (exchange.getException() != null) { + getExceptionHandler().handleException("Error processing exchange", exchange, exchange.getException()); } + releaseExchange(exchange, false); } }