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=1d22fa050b3510f7f14bc6ec8d3484a0b1eae845;hb=a5c571df79212de5c8a1b3939d0d8d5a436a55f1;hp=b6921794296e3f04d02d6e36ef45762a8888ecec;hpb=0a23c5e6383fe72e6c5f59aa727ae2b27bb966f5;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 b692179429..1d22fa050b 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,13 +8,23 @@ package org.opendaylight.controller.netconf.impl; -import com.google.common.base.Preconditions; import io.netty.channel.Channel; + +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.NetconfSession; +import org.opendaylight.controller.netconf.api.NetconfTerminationReason; import org.opendaylight.controller.netconf.api.monitoring.NetconfManagementSession; import org.opendaylight.protocol.framework.SessionListener; 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; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.extension.rev131210.NetconfTcp; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.extension.rev131210.Session1; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.extension.rev131210.Session1Builder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.NetconfSsh; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.Transport; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.monitoring.rev101004.netconf.state.sessions.Session; @@ -25,10 +35,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types. import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import com.google.common.base.Preconditions; public class NetconfServerSession extends NetconfSession implements NetconfManagementSession { @@ -39,7 +46,7 @@ public class NetconfServerSession extends NetconfSession implements NetconfManag private Date loginTime; private long inRpcSuccess, inRpcFail, outRpcError; - public NetconfServerSession(SessionListener sessionListener, Channel channel, long sessionId, + public NetconfServerSession(SessionListener sessionListener, Channel channel, long sessionId, NetconfServerSessionNegotiator.AdditionalHeader header) { super(sessionListener, channel, sessionId); this.header = header; @@ -91,14 +98,18 @@ public class NetconfServerSession extends NetconfSession implements NetconfManag builder.setOutNotifications(new ZeroBasedCounter32(0L)); builder.setKey(new SessionKey(getSessionId())); + + Session1Builder builder1 = new Session1Builder(); + builder1.setSessionIdentifier(header.getSessionType()); + builder.addAugmentation(Session1.class, builder1.build()); + return builder.build(); } private Class getTransportForString(String transport) { switch(transport) { case "ssh" : return NetconfSsh.class; - // TODO what about tcp - case "tcp" : return NetconfSsh.class; + case "tcp" : return NetconfTcp.class; default: throw new IllegalArgumentException("Unknown transport type " + transport); } }