X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Futil%2FAbstractChannelInitializer.java;h=5b4b3d02ea8839b1dddbf5132d16157d0d325324;hp=caee5421525515a2b9cef2b136cf00d2f5944fd5;hb=c31af714994cbaed40299758460916b2c7101158;hpb=c742dea42922f3910cb178a1d8f50706e73c8aaa diff --git a/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/AbstractChannelInitializer.java b/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/AbstractChannelInitializer.java index caee542152..5b4b3d02ea 100644 --- a/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/AbstractChannelInitializer.java +++ b/opendaylight/netconf/netconf-util/src/main/java/org/opendaylight/controller/netconf/util/AbstractChannelInitializer.java @@ -10,11 +10,23 @@ package org.opendaylight.controller.netconf.util; import io.netty.channel.socket.SocketChannel; import io.netty.util.concurrent.Promise; + import org.opendaylight.controller.netconf.api.NetconfSession; +import org.opendaylight.controller.netconf.util.handler.FramingMechanismHandlerFactory; +import org.opendaylight.controller.netconf.util.handler.NetconfMessageAggregator; +import org.opendaylight.controller.netconf.util.handler.NetconfMessageToXMLEncoder; +import org.opendaylight.controller.netconf.util.handler.NetconfXMLToMessageDecoder; +import org.opendaylight.controller.netconf.util.messages.FramingMechanism; public abstract class AbstractChannelInitializer { - public abstract void initialize(SocketChannel ch, Promise promise); + public void initialize(SocketChannel ch, Promise promise){ + ch.pipeline().addLast("aggregator", new NetconfMessageAggregator(FramingMechanism.EOM)); + ch.pipeline().addLast(new NetconfXMLToMessageDecoder()); + initializeAfterDecoder(ch, promise); + ch.pipeline().addLast("frameEncoder", FramingMechanismHandlerFactory.createHandler(FramingMechanism.EOM)); + ch.pipeline().addLast(new NetconfMessageToXMLEncoder()); + } protected abstract void initializeAfterDecoder(SocketChannel ch, Promise promise);