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 <[email protected]>
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);
}
}