camel-netty: Add a registry based option for a custom ChannelPipelineFactory ----------------------------------------------------------------------------
Key: CAMEL-2713 URL: https://issues.apache.org/activemq/browse/CAMEL-2713 Project: Apache Camel Issue Type: Improvement Affects Versions: 2.3.0 Environment: All Reporter: Christian Mueller Fix For: 2.4.0 We will build an ims-component to communicate with our [IMS|http://en.wikipedia.org/wiki/Information_Management_System] system. As described in the Netty documentation in chapter [1.7.2. The First Solution|http://docs.jboss.org/netty/3.1/guide/html_single/index.html#d0e865], I assume that we need a state full SimpleChannelHandler (class annotated with @ChannelPipelineCoverage("one")). The proposed solution is to use a ChannelPipelineFactory which creates a new ChannelPipeline and a new SimpleChannelHandler for each Channel. {code} public class TimeClientPipelineFactory implements ChannelPipelineFactory { public ChannelPipeline getPipeline() { ChannelPipeline pipeline = Channels.pipeline(); pipeline.addLast("handler", new TimeClientHandler()); return pipeline; } } {code} In the current implementation, this is not possible IMO. The custom handler, which is looked up from the registry, is shared between all channels: {code} channelPipeline.addLast("handler", consumer.getConfiguration().getHandler()); {code} If I'm right, I would like to provide the patch (but unfortunately not in the next two weeks). Thanks, Christian P.S: Very nice/clean code inside this component... :-) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.