Repository: camel Updated Branches: refs/heads/master 0128dea55 -> d57c1db10
CAMEL-6555 Support to send ExchangeHolder through UDP Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/d57c1db1 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/d57c1db1 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/d57c1db1 Branch: refs/heads/master Commit: d57c1db10b9568c39e7d11299d92bc90d770628b Parents: 0128dea Author: Willem Jiang <[email protected]> Authored: Thu Jul 24 17:14:59 2014 +0800 Committer: Willem Jiang <[email protected]> Committed: Thu Jul 24 17:15:28 2014 +0800 ---------------------------------------------------------------------- .../component/netty4/NettyPayloadHelper.java | 21 +++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/d57c1db1/components/camel-netty4/src/main/java/org/apache/camel/component/netty4/NettyPayloadHelper.java ---------------------------------------------------------------------- diff --git a/components/camel-netty4/src/main/java/org/apache/camel/component/netty4/NettyPayloadHelper.java b/components/camel-netty4/src/main/java/org/apache/camel/component/netty4/NettyPayloadHelper.java index f7deb21..714957b 100644 --- a/components/camel-netty4/src/main/java/org/apache/camel/component/netty4/NettyPayloadHelper.java +++ b/components/camel-netty4/src/main/java/org/apache/camel/component/netty4/NettyPayloadHelper.java @@ -64,8 +64,13 @@ public final class NettyPayloadHelper { } else if (payload instanceof AddressedEnvelope) { @SuppressWarnings("unchecked") AddressedEnvelope<Object, InetSocketAddress> dp = (AddressedEnvelope<Object, InetSocketAddress>)payload; - // need to take out the payload here - exchange.getIn().setBody(dp.content()); + // need to check if the content is ExchangeHolder + if (dp.content() instanceof DefaultExchangeHolder) { + DefaultExchangeHolder.unmarshal(exchange, (DefaultExchangeHolder) dp.content()); + } else { + // need to take out the payload here + exchange.getIn().setBody(dp.content()); + } // setup the sender address here for sending the response message back exchange.setProperty(NettyConstants.NETTY_REMOTE_ADDRESS, dp.sender()); } else { @@ -79,9 +84,14 @@ public final class NettyPayloadHelper { DefaultExchangeHolder.unmarshal(exchange, (DefaultExchangeHolder) payload); } else if (payload instanceof AddressedEnvelope) { @SuppressWarnings("unchecked") - AddressedEnvelope<Object, InetSocketAddress> dp = (AddressedEnvelope<Object, InetSocketAddress>)payload; - // need to take out the payload here - exchange.getOut().setBody(dp.content()); + AddressedEnvelope<Object, InetSocketAddress> dp = (AddressedEnvelope<Object, InetSocketAddress>)payload; + // need to check if the content is ExchangeHolder + if (dp.content() instanceof DefaultExchangeHolder) { + DefaultExchangeHolder.unmarshal(exchange, (DefaultExchangeHolder) dp.content()); + } else { + // need to take out the payload here + exchange.getOut().setBody(dp.content()); + } // setup the sender address here for sending the response message back exchange.setProperty(NettyConstants.NETTY_REMOTE_ADDRESS, dp.sender()); } else { @@ -90,5 +100,6 @@ public final class NettyPayloadHelper { exchange.getOut().setBody(payload); } } + }
