Improve NetconfDeviceCommunicator error checking
[netconf.git] / plugins / netconf-client-mdsal / src / main / java / org / opendaylight / netconf / client / mdsal / NetconfDeviceCommunicator.java
index a356f0f7a63d9a7374858a774627d9b7153bceff..4e9d7008789e0983c82313367545b3fe9d369fb4 100644 (file)
@@ -384,21 +384,14 @@ public class NetconfDeviceCommunicator implements NetconfClientSessionListener,
         requests.add(req);
 
         currentSession.sendMessage(req.request).addListener(future -> {
-            if (!future.isSuccess()) {
+            final var cause = future.cause();
+            if (cause != null) {
                 // We expect that a session down will occur at this point
-                final var cause = future.cause();
                 if (LOG.isDebugEnabled()) {
                     LOG.debug("{}: Failed to send request {}", id, XmlUtil.toString(req.request.getDocument()), cause);
                 }
 
-                final RpcResult<NetconfMessage> result;
-                if (cause == null) {
-                    // assume session is down
-                    result = createSessionDownRpcResult();
-                } else {
-                    result = createErrorRpcResult(ErrorType.TRANSPORT, cause.getLocalizedMessage());
-                }
-                req.future.set(result);
+                req.future.set(createErrorRpcResult(ErrorType.TRANSPORT, cause.getLocalizedMessage()));
             } else {
                 LOG.trace("Finished sending request {}", req.request);
             }