In vnet CLI, separates virutal port creation and binding operations.
Original usage with specifiying a phyiscal port is also in supporting.

Changes.
1. vnet-create-port allow to create virtual port
   without a specific virtual port
2. vnet-bind-port command is added to newly bind or to update
3. Virtual binding point is changed from Port to ConnectPoint.

Change-Id: I4c8f9a2b9b2786ba519ead3559d7f005390fee86
diff --git a/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompiler.java b/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompiler.java
index 8c04c6a..5eac0d4 100644
--- a/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompiler.java
+++ b/core/net/src/main/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompiler.java
@@ -202,7 +202,7 @@
         for (VirtualPort port : ports) {
             if (port.element().id().equals(virtualCp.elementId()) &&
                     port.number().equals(virtualCp.port())) {
-                return new ConnectPoint(port.realizedBy().element().id(), port.realizedBy().number());
+                return new ConnectPoint(port.realizedBy().deviceId(), port.realizedBy().port());
             }
         }
         return null;
diff --git a/core/net/src/test/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompilerTest.java b/core/net/src/test/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompilerTest.java
index 8b3387a..8ac8a92 100644
--- a/core/net/src/test/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompilerTest.java
+++ b/core/net/src/test/java/org/onosproject/net/intent/impl/compiler/VirtualNetworkIntentCompilerTest.java
@@ -153,28 +153,28 @@
                 manager.createVirtualDevice(virtualNetwork.id(), DID4);
 
         Port port1 = new DefaultPort(virtualDevice1, PortNumber.portNumber(1), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice1.id(), port1.number(), port1);
         cp1 = new ConnectPoint(virtualDevice1.id(), port1.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice1.id(), port1.number(), cp1);
 
         Port port2 = new DefaultPort(virtualDevice1, PortNumber.portNumber(2), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice1.id(), port2.number(), port2);
         cp2 = new ConnectPoint(virtualDevice1.id(), port2.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice1.id(), port2.number(), cp2);
 
         Port port3 = new DefaultPort(virtualDevice2, PortNumber.portNumber(3), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice2.id(), port3.number(), port3);
         cp3 = new ConnectPoint(virtualDevice2.id(), port3.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice2.id(), port3.number(), cp3);
 
         Port port4 = new DefaultPort(virtualDevice2, PortNumber.portNumber(4), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice2.id(), port4.number(), port4);
         cp4 = new ConnectPoint(virtualDevice2.id(), port4.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice2.id(), port4.number(), cp4);
 
         Port port5 = new DefaultPort(virtualDevice3, PortNumber.portNumber(5), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice3.id(), port5.number(), port5);
         cp5 = new ConnectPoint(virtualDevice3.id(), port5.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice3.id(), port5.number(), cp5);
 
         Port port6 = new DefaultPort(virtualDevice3, PortNumber.portNumber(6), true);
-        manager.createVirtualPort(virtualNetwork.id(), virtualDevice3.id(), port6.number(), port6);
         cp6 = new ConnectPoint(virtualDevice3.id(), port6.number());
+        manager.createVirtualPort(virtualNetwork.id(), virtualDevice3.id(), port6.number(), cp6);
 
         link1 = manager.createVirtualLink(virtualNetwork.id(), cp1, cp3);
         virtualNetworkManagerStore.updateLink(link1, link1.tunnelId(), Link.State.ACTIVE);