Simplified the port handling logic for VM live migration case

Change-Id: Ib28978bb2ee62c4719261c38eebb72a006f81f19
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
index 609b580..c384a44 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/util/OpenstackNetworkingUtil.java
@@ -24,6 +24,7 @@
 import org.onosproject.openstacknetworking.api.InstancePort;
 import org.onosproject.openstacknetworking.api.OpenstackNetworkService;
 import org.onosproject.openstacknetworking.api.OpenstackRouterAdminService;
+import org.onosproject.openstacknetworking.impl.DefaultInstancePort;
 import org.onosproject.openstacknode.api.OpenstackAuth;
 import org.onosproject.openstacknode.api.OpenstackAuth.Perspective;
 import org.onosproject.openstacknode.api.OpenstackNode;
@@ -383,6 +384,25 @@
     }
 
     /**
+     * Swaps current location with old location info.
+     * The revised instance port will be used to mod the flow rules after migration.
+     *
+     * @param instPort instance port
+     * @return location swapped instance port
+     */
+    public static InstancePort swapStaleLocation(InstancePort instPort) {
+        return DefaultInstancePort.builder()
+                .deviceId(instPort.oldDeviceId())
+                .portNumber(instPort.oldPortNumber())
+                .state(instPort.state())
+                .ipAddress(instPort.ipAddress())
+                .macAddress(instPort.macAddress())
+                .networkId(instPort.networkId())
+                .portId(instPort.portId())
+                .build();
+    }
+
+    /**
      * Builds up and a complete endpoint URL from gateway node.
      *
      * @param node gateway node