[ https://issues.apache.org/activemq/browse/CAMEL-2713?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ashwin Karpe resolved CAMEL-2713. --------------------------------- Resolution: Fixed > 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 > Assignee: Ashwin Karpe > Fix For: 2.5.0 > > Attachments: camel-2713-fix.diff, camel-2713-netty.zip > > > 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.