Author: davsclaus Date: Thu Apr 22 08:47:40 2010 New Revision: 936656 URL: http://svn.apache.org/viewvc?rev=936656&view=rev Log: CAMEL-2657: Applied patch with thanks to Stephen Gargan
Modified: camel/trunk/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConfiguration.java camel/trunk/components/camel-netty/src/test/java/org/apache/camel/component/netty/MultipleCodecsTest.java Modified: camel/trunk/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConfiguration.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConfiguration.java?rev=936656&r1=936655&r2=936656&view=diff ============================================================================== --- camel/trunk/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConfiguration.java (original) +++ camel/trunk/components/camel-netty/src/main/java/org/apache/camel/component/netty/NettyConfiguration.java Thu Apr 22 08:47:40 2010 @@ -90,9 +90,9 @@ public class NettyConfiguration { keyStoreFile = component.resolveAndRemoveReferenceParameter(parameters, "keyStoreFile", File.class, null); trustStoreFile = component.resolveAndRemoveReferenceParameter(parameters, "trustStoreFile", File.class, null); - List<ChannelDownstreamHandler> referencedEncoders = component.resolveAndRemoveReferenceParameter(parameters, "encoders", List.class, null); + List<ChannelDownstreamHandler> referencedEncoders = component.resolveAndRemoveReferenceListParameter(parameters, "encoders", ChannelDownstreamHandler.class, null); addToHandlersList(encoders, referencedEncoders, ChannelDownstreamHandler.class); - List<ChannelUpstreamHandler> referencedDecoders = component.resolveAndRemoveReferenceParameter(parameters, "decoders", List.class, null); + List<ChannelUpstreamHandler> referencedDecoders = component.resolveAndRemoveReferenceListParameter(parameters, "decoders", ChannelUpstreamHandler.class, null); addToHandlersList(decoders, referencedDecoders, ChannelUpstreamHandler.class); if (encoders.isEmpty() && decoders.isEmpty()) { Modified: camel/trunk/components/camel-netty/src/test/java/org/apache/camel/component/netty/MultipleCodecsTest.java URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-netty/src/test/java/org/apache/camel/component/netty/MultipleCodecsTest.java?rev=936656&r1=936655&r2=936656&view=diff ============================================================================== --- camel/trunk/components/camel-netty/src/test/java/org/apache/camel/component/netty/MultipleCodecsTest.java (original) +++ camel/trunk/components/camel-netty/src/test/java/org/apache/camel/component/netty/MultipleCodecsTest.java Thu Apr 22 08:47:40 2010 @@ -38,17 +38,28 @@ public class MultipleCodecsTest extends protected JndiRegistry createRegistry() throws Exception { JndiRegistry registry = super.createRegistry(); + // START SNIPPET: registry-beans + LengthFieldBasedFrameDecoder lengthDecoder = new LengthFieldBasedFrameDecoder(1048576, 0, 4, 0, 4); + StringDecoder stringDecoder = new StringDecoder(); + registry.bind("length-decoder", lengthDecoder); + registry.bind("string-decoder", stringDecoder); + + LengthFieldPrepender lengthEncoder = new LengthFieldPrepender(4); + StringEncoder stringEncoder = new StringEncoder(); + registry.bind("length-encoder", lengthEncoder); + registry.bind("string-encoder", stringEncoder); + List<ChannelUpstreamHandler> decoders = new ArrayList<ChannelUpstreamHandler>(); - decoders.add(new LengthFieldBasedFrameDecoder(1048576, 0, 4, 0, 4)); - decoders.add(new StringDecoder()); + decoders.add(lengthDecoder); + decoders.add(stringDecoder); List<ChannelDownstreamHandler> encoders = new ArrayList<ChannelDownstreamHandler>(); - encoders.add(new LengthFieldPrepender(4)); - encoders.add(new StringEncoder()); + encoders.add(lengthEncoder); + encoders.add(stringEncoder); registry.bind("encoders", encoders); registry.bind("decoders", decoders); - + // END SNIPPET: registry-beans return registry; } @@ -57,7 +68,7 @@ public class MultipleCodecsTest extends String poem = new Poetry().getPoem(); MockEndpoint mock = getMockEndpoint("mock:multiple-codec"); mock.expectedBodiesReceived(poem); - sendBody("direct:mutliple-codec", poem); + sendBody("direct:multiple-codec", poem); mock.await(1, TimeUnit.SECONDS); mock.assertIsSatisfied(); @@ -66,11 +77,11 @@ public class MultipleCodecsTest extends protected RouteBuilder createRouteBuilder() throws Exception { return new RouteBuilder() { public void configure() throws Exception { - from("direct:mutliple-codec").to("netty:tcp://localhost:5150?encoders=#encoders"); - - from("netty:tcp://localhost:5150?decoders=#decoders").to("mock:multiple-codec"); + // START SNIPPET: routes + from("direct:multiple-codec").to("netty:tcp://localhost:5150?encoders=#encoders"); + from("netty:tcp://localhost:5150?decoders=#length-decoder,#string-decoder").to("mock:multiple-codec"); + // START SNIPPET: routes } }; } - }