Fix: remove stale security group rules when VM migration finished

Change-Id: I9303f6bb003ced8e100ebd905ddf6e63193fb4a6
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSecurityGroupHandler.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSecurityGroupHandler.java
index 4982272..2308015 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSecurityGroupHandler.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSecurityGroupHandler.java
@@ -102,6 +102,7 @@
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_CT_DROP_RULE;
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_CT_HOOK_RULE;
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_CT_RULE;
+import static org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.swapStaleLocation;
 import static org.onosproject.openstacknetworking.util.RulePopulatorUtil.computeCtMaskFlag;
 import static org.onosproject.openstacknetworking.util.RulePopulatorUtil.computeCtStateFlag;
 import static org.onosproject.openstacknetworking.util.RulePopulatorUtil.niciraConnTrackTreatmentBuilder;
@@ -762,6 +763,12 @@
                     );
                     removedOsPortStore.remove(instPort.portId());
                     break;
+                case OPENSTACK_INSTANCE_MIGRATION_ENDED:
+                    InstancePort revisedInstPort = swapStaleLocation(instPort);
+                    Port port = osNetService.port(instPort.portId());
+                    eventExecutor.execute(() ->
+                            setSecurityGroupRules(revisedInstPort, port, false));
+                    break;
                 default:
                     break;
             }