Bug 3021: Fix notification handling 03/18603/2
authorFlorin Coras <fcoras@cisco.com>
Sun, 19 Apr 2015 19:09:01 +0000 (12:09 -0700)
committerFlorin Coras <fcoras@cisco.com>
Mon, 20 Apr 2015 15:39:51 +0000 (08:39 -0700)
This fixes the return types of LispSouthboundPlugin methods used for
sending LISP messages to avoid NullPointerExceptions in mdsal.

Change-Id: I0d5596da016917eee74bf9776914081464a4c4c3
Signed-off-by: Florin Coras <fcoras@cisco.com>
mappingservice/southbound/src/main/java/org/opendaylight/lispflowmapping/southbound/LispSouthboundPlugin.java

index cb565692647f2d1d099d325230fc9477037118a5..9885afcb3971263e738958127ec7c3ab5dd66e69 100644 (file)
@@ -36,12 +36,14 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.control.plane.rev150314
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.control.plane.rev150314.SendMapRequestInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.control.plane.rev150314.transportaddress.TransportAddress;
 import org.opendaylight.yangtools.yang.common.RpcResult;
+import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.FrameworkUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import com.google.common.net.InetAddresses;
+import com.google.common.util.concurrent.Futures;
 
 public class LispSouthboundPlugin extends AbstractBindingAwareProvider implements IConfigLispSouthboundPlugin, CommandProvider, LfmControlPlaneService {
     protected static final Logger LOG = LoggerFactory.getLogger(LispSouthboundPlugin.class);
@@ -280,8 +282,9 @@ public class LispSouthboundPlugin extends AbstractBindingAwareProvider implement
             handleSerializedLispBuffer(mapNotifyInput.getTransportAddress(), outBuffer, MAP_NOTIFY);
         } else {
             LOG.warn("MapNotify was null");
+            return Futures.immediateFuture(RpcResultBuilder.<Void> failed().build());
         }
-        return null;
+        return Futures.immediateFuture(RpcResultBuilder.<Void> success().build());
     }
 
     @Override
@@ -292,8 +295,9 @@ public class LispSouthboundPlugin extends AbstractBindingAwareProvider implement
             handleSerializedLispBuffer(mapReplyInput.getTransportAddress(), outBuffer, MAP_REPlY);
         } else {
             LOG.warn("MapReply was null");
+            return Futures.immediateFuture(RpcResultBuilder.<Void> failed().build());
         }
-        return null;
+        return Futures.immediateFuture(RpcResultBuilder.<Void> success().build());
     }
 
     @Override
@@ -304,8 +308,9 @@ public class LispSouthboundPlugin extends AbstractBindingAwareProvider implement
             handleSerializedLispBuffer(mapRequestInput.getTransportAddress(), outBuffer, MAP_REQUEST);
         } else {
             LOG.debug("MapRequest was null");
+            return Futures.immediateFuture(RpcResultBuilder.<Void> failed().build());
         }
-        return null;
+        return Futures.immediateFuture(RpcResultBuilder.<Void> success().build());
     }
 
     @Override