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.