Bug 5212 - Neutron-mapper has dependency on Ofoverlay renderer
[groupbasedpolicy.git] / neutron-ovsdb / src / main / java / org / opendaylight / groupbasedpolicy / neutron / ovsdb / TerminationPointDataChangeListener.java
index 6b9a5f89ca2b0839e339aa1592c59db3f8750d56..5339e9e1b4604de35d982ba9a34f23edac59a652 100755 (executable)
@@ -9,8 +9,6 @@
 package org.opendaylight.groupbasedpolicy.neutron.ovsdb;
 
 import static com.google.common.base.Preconditions.checkNotNull;
-import static org.opendaylight.groupbasedpolicy.neutron.ovsdb.NodeDataChangeListener.getProviderMapping;
-import static org.opendaylight.groupbasedpolicy.neutron.ovsdb.NodeDataChangeListener.processNodeNotification;
 import static org.opendaylight.groupbasedpolicy.neutron.ovsdb.util.EndpointHelper.lookupEndpoint;
 import static org.opendaylight.groupbasedpolicy.neutron.ovsdb.util.EndpointHelper.updateEndpointRemoveLocation;
 import static org.opendaylight.groupbasedpolicy.neutron.ovsdb.util.EndpointHelper.updateEndpointWithLocation;
@@ -42,7 +40,7 @@ import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeEvent;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
 import org.opendaylight.ovsdb.southbound.SouthboundConstants;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.Uuid;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.UniqueId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.EndpointService;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.Endpoint;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.EndpointKey;
@@ -81,8 +79,8 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
             .child(Node.class)
             .child(TerminationPoint.class)
             .augmentation(OvsdbTerminationPointAugmentation.class);
-        registration = dataBroker.registerDataChangeListener(LogicalDatastoreType.OPERATIONAL, iid, this,
-                DataChangeScope.ONE);
+        registration =
+                dataBroker.registerDataChangeListener(LogicalDatastoreType.OPERATIONAL, iid, this, DataChangeScope.ONE);
         requiredTunnelTypes = createSupportedTunnelsList();
     }
 
@@ -102,7 +100,8 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
      * When vSwitch is deleted, we loose data in operational DS to determine Iid of
      * corresponding NodeId.
      */
-    private static final Map<InstanceIdentifier<OvsdbTerminationPointAugmentation>, NodeId> nodeIdByTerminPoint = new HashMap<>();
+    private static final Map<InstanceIdentifier<OvsdbTerminationPointAugmentation>, NodeId> nodeIdByTerminPoint =
+            new HashMap<>();
 
     @Override
     public void onDataChanged(AsyncDataChangeEvent<InstanceIdentifier<?>, DataObject> change) {
@@ -115,7 +114,8 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
             if (entry.getValue() instanceof OvsdbTerminationPointAugmentation) {
                 OvsdbTerminationPointAugmentation ovsdbTp = (OvsdbTerminationPointAugmentation) entry.getValue();
                 @SuppressWarnings("unchecked")
-                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid = (InstanceIdentifier<OvsdbTerminationPointAugmentation>) entry.getKey();
+                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid =
+                        (InstanceIdentifier<OvsdbTerminationPointAugmentation>) entry.getKey();
                 OvsdbBridgeAugmentation ovsdbBridge = getOvsdbBridgeFromTerminationPoint(ovsdbTpIid, dataBroker);
                 nodeIdByTerminPoint.put(ovsdbTpIid,
                         new NodeId(getInventoryNodeIdString(ovsdbBridge, ovsdbTpIid, dataBroker)));
@@ -130,7 +130,8 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
             if (entry.getValue() instanceof OvsdbTerminationPointAugmentation) {
                 OvsdbTerminationPointAugmentation ovsdbTp = (OvsdbTerminationPointAugmentation) entry.getValue();
                 @SuppressWarnings("unchecked")
-                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid = (InstanceIdentifier<OvsdbTerminationPointAugmentation>) entry.getKey();
+                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid =
+                        (InstanceIdentifier<OvsdbTerminationPointAugmentation>) entry.getKey();
                 OvsdbBridgeAugmentation ovsdbBridge = getOvsdbBridgeFromTerminationPoint(ovsdbTpIid, dataBroker);
                 processOvsdbBridge(ovsdbBridge, ovsdbTp, ovsdbTpIid);
             }
@@ -144,8 +145,9 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
             if (old instanceof OvsdbTerminationPointAugmentation) {
                 OvsdbTerminationPointAugmentation ovsdbTp = (OvsdbTerminationPointAugmentation) old;
                 @SuppressWarnings("unchecked")
-                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid = (InstanceIdentifier<OvsdbTerminationPointAugmentation>) iid;
-                processRemovedTp(nodeIdByTerminPoint.get(ovsdbTpIid) , ovsdbTp, ovsdbTpIid);
+                InstanceIdentifier<OvsdbTerminationPointAugmentation> ovsdbTpIid =
+                        (InstanceIdentifier<OvsdbTerminationPointAugmentation>) iid;
+                processRemovedTp(nodeIdByTerminPoint.get(ovsdbTpIid), ovsdbTp, ovsdbTpIid);
             }
         }
     }
@@ -188,7 +190,7 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
          */
 
         if (externalId != null) {
-            EndpointKey epKey = getEpKeyFromNeutronMapper(new Uuid(externalId), dataBroker);
+            EndpointKey epKey = getEpKeyFromNeutronMapper(new UniqueId(externalId), dataBroker);
             if (epKey == null) {
                 LOG.debug("TerminationPoint {} with external ID {} is not in Neutron Map", ovsdbTp, externalId);
                 return;
@@ -221,22 +223,6 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
 
         }
 
-        /*
-         * Check if Neutron External port was announed in Node before TerminationPoint it refers to
-         * was actually instantiated. This may or may not have external information in the future,
-         * hence
-         * not process as IF/ELSE externalID.
-         */
-        ReadOnlyTransaction transaction = dataBroker.newReadOnlyTransaction();
-        Optional<Node> node = readFromDs(LogicalDatastoreType.OPERATIONAL, nodeIid, transaction);
-        if (node.isPresent() && node.get().getAugmentation(OvsdbNodeAugmentation.class) != null) {
-            OvsdbNodeAugmentation ovsdbNodeAug = node.get().getAugmentation(OvsdbNodeAugmentation.class);
-            if (getProviderMapping(ovsdbNodeAug) != null) {
-                processNodeNotification(ovsdbNodeAug);
-
-            }
-        } else {
-        }
         /*
          * This may be a notification for a tunnel we just created.
          * In that case, we need to update the Inventory Node's OfOverlay
@@ -278,7 +264,7 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
     private void deleteLocationForTp(OvsdbTerminationPointAugmentation ovsdbTp) {
         String externalId = getNeutronPortUuid(ovsdbTp);
         if (externalId != null) {
-            EndpointKey epKey = getEpKeyFromNeutronMapper(new Uuid(externalId), dataBroker);
+            EndpointKey epKey = getEpKeyFromNeutronMapper(new UniqueId(externalId), dataBroker);
             if (epKey == null) {
                 LOG.debug("TerminationPoint {} with external ID {} is not in Neutron Map.", ovsdbTp, externalId);
                 return;
@@ -327,7 +313,8 @@ public class TerminationPointDataChangeListener implements DataChangeListener, A
      *
      * @return true if it's a required tunnel port, false if it isn't
      */
-    private boolean isTunnelPort(OvsdbTerminationPointAugmentation ovsdbTp, List<AbstractTunnelType> requiredTunnelTypes) {
+    private boolean isTunnelPort(OvsdbTerminationPointAugmentation ovsdbTp,
+            List<AbstractTunnelType> requiredTunnelTypes) {
         if (ovsdbTp.getInterfaceType() != null) {
             for (AbstractTunnelType tunnelType : requiredTunnelTypes) {
                 if (tunnelType.isValidTunnelPort(ovsdbTp)) {