[SO] heatbridge implemention to delete L3Network and its subnet from AAI 95/110895/1
authorMunir Ahmad <munir.ahmad@bell.ca>
Tue, 4 Aug 2020 16:26:19 +0000 (12:26 -0400)
committerMunir Ahmad <munir.ahmad@bell.ca>
Tue, 4 Aug 2020 16:26:19 +0000 (12:26 -0400)
    Issue-ID: SO-3109

Signed-off-by: Munir Ahmad <munir.ahmad@bell.ca>
Change-Id: Ib59975fea3efe54b301e0484e38d08b07d5fc947

adapters/mso-openstack-adapters/src/main/java/org/onap/so/heatbridge/HeatBridgeImpl.java

index 9295800..ef2577d 100644 (file)
@@ -552,6 +552,20 @@ public class HeatBridgeImpl implements HeatBridgeApi {
             Optional<Relationships> relationships = resultWrapper.getRelationships();
             logger.debug("VfModule contains relationships in AAI: {}", relationships.isPresent());
             if (relationships.isPresent()) {
+
+                List<AAIResourceUri> l3NetworkUris = relationships.get().getRelatedUris(AAIObjectType.L3_NETWORK);
+                logger.debug("L3Network contains {} relationships in AAI", l3NetworkUris.size());
+
+                if (!l3NetworkUris.isEmpty()) {
+                    for (AAIResourceUri l3NetworkUri : l3NetworkUris) {
+                        if (env.getProperty("heatBridgeDryrun", Boolean.class, true)) {
+                            logger.debug("Would delete L3Network: {}", l3NetworkUri.build().toString());
+                        } else {
+                            resourcesClient.delete(l3NetworkUri);
+                        }
+                    }
+                }
+
                 List<AAIResourceUri> vserverUris = relationships.get().getRelatedUris(AAIObjectType.VSERVER);
                 logger.debug("VServer contains {} relationships in AAI", vserverUris.size());
                 createTransactionToDeleteSriovPfFromPserver(vserverUris);