CORD-380 Added host provider for cordvtn service

- Renamed CordVtnConfigManager to CordVtnNodeManager
- Moved all node bootstrap logic to CordVtnNodeManager
- CordVtnService now provides VM add/remove and service dependency create/remove
- Made CordVtn implement HostProvider so that it can inject/eject VM to the system

Change-Id: I0011ac692ecea240d2d7fe48b3e7a1db4973b76e
diff --git a/src/main/java/org/onosproject/cordvtn/CordVtnService.java b/src/main/java/org/onosproject/cordvtn/CordVtnService.java
index fee857a..b5bef86 100644
--- a/src/main/java/org/onosproject/cordvtn/CordVtnService.java
+++ b/src/main/java/org/onosproject/cordvtn/CordVtnService.java
@@ -15,7 +15,7 @@
  */
 package org.onosproject.cordvtn;
 
-import java.util.List;
+import org.onosproject.net.ConnectPoint;
 
 /**
  * Service for provisioning overlay virtual networks on compute nodes.
@@ -23,61 +23,21 @@
 public interface CordVtnService {
 
     String CORDVTN_APP_ID = "org.onosproject.cordvtn";
+
     /**
-     * Adds a new node to the service.
+     * Adds a new VM on a given node and connect point.
      *
      * @param node cordvtn node
+     * @param connectPoint connect point
      */
-    void addNode(CordVtnNode node);
+    void addServiceVm(CordVtnNode node, ConnectPoint connectPoint);
 
     /**
-     * Deletes a node from the service.
+     * Removes a VM from a given node and connect point.
      *
-     * @param node cordvtn node
+     * @param connectPoint connect point
      */
-    void deleteNode(CordVtnNode node);
-
-    /**
-     * Initiates node to serve virtual tenant network.
-     *
-     * @param node cordvtn node
-     */
-    void initNode(CordVtnNode node);
-
-    /**
-     * Returns the number of the nodes known to the service.
-     *
-     * @return number of nodes
-     */
-    int getNodeCount();
-
-    /**
-     * Returns node initialization state.
-     *
-     * @param node cordvtn node
-     * @return true if initial node setup is completed, otherwise false
-     */
-    boolean getNodeInitState(CordVtnNode node);
-
-    /**
-     * Returns detailed node initialization state.
-     * Return string includes the following information.
-     *
-     * Integration bridge created/connected: OK or NO
-     * VXLAN interface created: OK or NO
-     * Physical interface added: OK or NO
-     *
-     * @param node cordvtn node
-     * @return string including detailed node init state
-     */
-    String checkNodeInitState(CordVtnNode node);
-
-    /**
-     * Returns all nodes known to the service.
-     *
-     * @return list of nodes
-     */
-    List<CordVtnNode> getNodes();
+    void removeServiceVm(ConnectPoint connectPoint);
 
     /**
      * Creates dependencies for a given tenant service.