Fix lisp route for public interfaces
[groupbasedpolicy.git] / renderers / vpp / src / main / java / org / opendaylight / groupbasedpolicy / renderer / vpp / dhcp / DhcpRelayHandler.java
index 92ac7d75c16155a6f6076c6ae2dd2e9c134e07e5..61ccd04efe504cd40f6032339f06528b5026a733 100644 (file)
@@ -10,6 +10,9 @@ package org.opendaylight.groupbasedpolicy.renderer.vpp.dhcp;
 
 import static org.opendaylight.groupbasedpolicy.renderer.vpp.util.VppIidFactory.getVppRendererConfig;
 
+import com.google.common.base.Optional;
+import com.google.common.collect.SetMultimap;
+
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
@@ -36,9 +39,6 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.base.Optional;
-import com.google.common.collect.SetMultimap;
-
 public class DhcpRelayHandler {
 
     private static final Logger LOG = LoggerFactory.getLogger(DhcpRelayHandler.class);
@@ -135,6 +135,12 @@ public class DhcpRelayHandler {
 
     public boolean submitDhcpRelay(DhcpRelayCommand dhcpRelayCommand) {
         LOG.trace("Submitting DhcpRelay command: {}, nodeId: {}", dhcpRelayCommand, dhcpRelayCommand.getVppNodeId());
+        if (dhcpRelayCommand.getServerIpAddresses().isEmpty() || dhcpRelayCommand.getGatewayIpAddress() == null
+            || dhcpRelayCommand.getVppNodeId() == null) {
+            LOG.warn("Cannot submit DHCP Relay. dhcpRelayCommand: {}, nodeId: {}.", dhcpRelayCommand,
+                dhcpRelayCommand.getVppNodeId());
+            return false;
+        }
         switch (dhcpRelayCommand.getOperation()){
             case PUT:
                 return GbpNetconfTransaction.netconfSyncedWrite(