diff --git a/drivers/netconf/src/main/resources/netconf-drivers.xml b/drivers/netconf/src/main/resources/netconf-drivers.xml index d9930adf25..6a4e2ae039 100644 --- a/drivers/netconf/src/main/resources/netconf-drivers.xml +++ b/drivers/netconf/src/main/resources/netconf-drivers.xml @@ -16,8 +16,7 @@ --> - + - + \n"); - rpc.append(""); + rpc.append("\n"); rpc.append(""); rpc.append("<").append(targetConfiguration).append("/>"); - rpc.append(""); + rpc.append("\n"); rpc.append(""); rpc.append(mode); - rpc.append(""); - rpc.append(""); + rpc.append("\n"); + rpc.append("\n"); rpc.append(newConfiguration); - rpc.append(""); - rpc.append(""); + rpc.append("\n"); + rpc.append("\n"); rpc.append(""); rpc.append(ENDPATTERN); + log.info(rpc.toString()); return checkReply(sendRequest(rpc.toString())); } diff --git a/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/NetconfStreamThread.java b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/NetconfStreamThread.java index 7df78490de..1ed3f392a9 100644 --- a/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/NetconfStreamThread.java +++ b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/NetconfStreamThread.java @@ -161,13 +161,8 @@ public class NetconfStreamThread extends Thread implements NetconfStreamHandler while (!socketClosed) { int cInt = bufferReader.read(); if (cInt == -1) { - socketClosed = true; - log.debug("char {} " + bufferReader.read()); - NetconfDeviceOutputEvent event = new NetconfDeviceOutputEvent( - NetconfDeviceOutputEvent.Type.DEVICE_UNREGISTERED, - null, null, Optional.of(-1), netconfDeviceInfo); - netconfDeviceEventListeners.forEach( - listener -> listener.event(event)); + log.debug("Netconf device {} sent error char in session," + + " will need to be reopend", netconfDeviceInfo); } char c = (char) cInt; state = state.evaluateChar(c); @@ -175,6 +170,7 @@ public class NetconfStreamThread extends Thread implements NetconfStreamHandler if (state == NetconfMessageState.END_PATTERN) { String deviceReply = deviceReplyBuilder.toString(); if (deviceReply.equals(END_PATTERN)) { + socketClosed = true; NetconfDeviceOutputEvent event = new NetconfDeviceOutputEvent( NetconfDeviceOutputEvent.Type.DEVICE_UNREGISTERED, null, null, Optional.of(-1), netconfDeviceInfo);