X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fimpl%2FNetconfServerSession.java;h=0cf2dbc281e1503e0ff1dd8d362285919c527c9a;hb=fb3ca10a354d54d067201f18943504c212b93613;hp=280375d918fc487f98b29777a276fbdef9123cec;hpb=9c9d6e69da3aff2d0576d8c15ea0fa0692595b6d;p=controller.git diff --git a/opendaylight/netconf/netconf-impl/src/main/java/org/opendaylight/controller/netconf/impl/NetconfServerSession.java b/opendaylight/netconf/netconf-impl/src/main/java/org/opendaylight/controller/netconf/impl/NetconfServerSession.java index 280375d918..0cf2dbc281 100644 --- a/opendaylight/netconf/netconf-impl/src/main/java/org/opendaylight/controller/netconf/impl/NetconfServerSession.java +++ b/opendaylight/netconf/netconf-impl/src/main/java/org/opendaylight/controller/netconf/impl/NetconfServerSession.java @@ -8,18 +8,19 @@ package org.opendaylight.controller.netconf.impl; +import com.google.common.base.Preconditions; +import io.netty.channel.Channel; +import io.netty.handler.codec.ByteToMessageDecoder; +import io.netty.handler.codec.MessageToByteEncoder; import java.text.SimpleDateFormat; import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; - +import org.opendaylight.controller.netconf.api.NetconfMessage; import org.opendaylight.controller.netconf.api.monitoring.NetconfManagementSession; -import org.opendaylight.controller.netconf.util.AbstractNetconfSession; -import org.opendaylight.controller.netconf.util.handler.NetconfEXICodec; -import org.opendaylight.controller.netconf.util.handler.NetconfEXIToMessageDecoder; -import org.opendaylight.controller.netconf.util.handler.NetconfMessageToEXIEncoder; -import org.opendaylight.controller.netconf.util.handler.NetconfMessageToXMLEncoder; -import org.opendaylight.controller.netconf.util.handler.NetconfXMLToMessageDecoder; +import org.opendaylight.controller.netconf.nettyutil.AbstractNetconfSession; +import org.opendaylight.controller.netconf.nettyutil.handler.NetconfMessageToXMLEncoder; +import org.opendaylight.controller.netconf.nettyutil.handler.NetconfXMLToMessageDecoder; import org.opendaylight.controller.netconf.util.messages.NetconfHelloMessageAdditionalHeader; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.DomainName; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Host; @@ -36,30 +37,27 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types. import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.google.common.base.Preconditions; -import io.netty.channel.Channel; - public final class NetconfServerSession extends AbstractNetconfSession implements NetconfManagementSession { - private static final Logger logger = LoggerFactory.getLogger(NetconfServerSession.class); + private static final Logger LOG = LoggerFactory.getLogger(NetconfServerSession.class); private final NetconfHelloMessageAdditionalHeader header; private Date loginTime; private long inRpcSuccess, inRpcFail, outRpcError; - public NetconfServerSession(NetconfServerSessionListener sessionListener, Channel channel, long sessionId, - NetconfHelloMessageAdditionalHeader header) { + public NetconfServerSession(final NetconfServerSessionListener sessionListener, final Channel channel, final long sessionId, + final NetconfHelloMessageAdditionalHeader header) { super(sessionListener, channel, sessionId); this.header = header; - logger.debug("Session {} created", toString()); + LOG.debug("Session {} created", toString()); } @Override protected void sessionUp() { - super.sessionUp(); Preconditions.checkState(loginTime == null, "Session is already up"); this.loginTime = new Date(); + super.sessionUp(); } public void onIncommingRpcSuccess() { @@ -111,15 +109,18 @@ public final class NetconfServerSession extends AbstractNetconfSession getTransportForString(String transport) { + private Class getTransportForString(final String transport) { switch(transport) { - case "ssh" : return NetconfSsh.class; - case "tcp" : return NetconfTcp.class; - default: throw new IllegalArgumentException("Unknown transport type " + transport); + case "ssh" : + return NetconfSsh.class; + case "tcp" : + return NetconfTcp.class; + default: + throw new IllegalArgumentException("Unknown transport type " + transport); } } - private String formatDateTime(Date loginTime) { + private String formatDateTime(final Date loginTime) { SimpleDateFormat dateFormat = new SimpleDateFormat(ISO_DATE_FORMAT); return dateFormat.format(loginTime); } @@ -130,9 +131,9 @@ public final class NetconfServerSession extends AbstractNetconfSession encoder) { + replaceMessageDecoder(decoder); + replaceMessageEncoderAfterNextMessage(encoder); } @Override