Redesign a part of APIs of IIntentRuntimeService
It's a part of ONOS-1654.
- Rename: addIntent() -> install()
removeIntent -> remove()
- Remove: updateIntent() because update operation is not allowed
under the new semantics. Instead, explicitly remove the previous
intent, then install a new intent.
Change-Id: Ic61afd076d0d60c2637a873c875adb57005ad056
diff --git a/src/main/java/net/onrc/onos/api/intent/IIntentRuntimeService.java b/src/main/java/net/onrc/onos/api/intent/IIntentRuntimeService.java
index 0e5c36e..73ed704 100644
--- a/src/main/java/net/onrc/onos/api/intent/IIntentRuntimeService.java
+++ b/src/main/java/net/onrc/onos/api/intent/IIntentRuntimeService.java
@@ -19,29 +19,24 @@
*/
public interface IIntentRuntimeService {
/**
- * Adds specified intent.
+ * Installs the specified intent synchronously.
*
- * @param intent Intent to be added.
- * @return true if succeeded, false otherwise.
+ * This method blocks until the installation succeeds or fails.
+ *
+ * @param intent the intent to be installed.
+ * @return true if the intent is successfully installed. Otherwise, false.
*/
- boolean addIntent(Intent intent);
+ public boolean install(Intent intent);
/**
- * Removes specified intent.
+ * Removes the specified intent synchronously.
*
- * @param id ID of the intent to be removed.
- * @return true if succeeded, false otherwise.
- */
- boolean removeIntent(IntentId id);
-
- /**
- * Overwrites existing intent by new specified intent.
+ * This method blocks until the removal succeeds or fails.
*
- * @param id ID of the existing intent to be overwritten.
- * @param intent The new intent to be added.
- * @return true if succeeded, false otherwise.
+ * @param id the ID of the intent to be uninstalled.
+ * @return true if the intent is successfully uninstalled. Otherwise, false.
*/
- boolean updateIntent(IntentId id, Intent intent);
+ public boolean remove(IntentId id);
/**
* Gets specific intent.
diff --git a/src/main/java/net/onrc/onos/core/newintent/IntentRuntimeModule.java b/src/main/java/net/onrc/onos/core/newintent/IntentRuntimeModule.java
index 2521e56..d9b1f60 100644
--- a/src/main/java/net/onrc/onos/core/newintent/IntentRuntimeModule.java
+++ b/src/main/java/net/onrc/onos/core/newintent/IntentRuntimeModule.java
@@ -19,26 +19,16 @@
* TODO: Design methods to support the ReactiveForwarding and the SDN-IP.
*/
public class IntentRuntimeModule implements IIntentRuntimeService {
-
@Override
- public boolean addIntent(Intent intent) {
- BatchOperation<Intent> ops = new BatchOperation<Intent>();
- ops.addAddOperation(intent);
- return executeBatch(ops);
+ public boolean install(Intent intent) {
+ // TODO: implement this method
+ return false;
}
@Override
- public boolean removeIntent(IntentId id) {
- BatchOperation<Intent> ops = new BatchOperation<Intent>();
- ops.addRemoveOperation(id);
- return executeBatch(ops);
- }
-
- @Override
- public boolean updateIntent(IntentId id, Intent intent) {
- BatchOperation<Intent> ops = new BatchOperation<Intent>();
- ops.addUpdateOperation(id, intent);
- return executeBatch(ops);
+ public boolean remove(IntentId id) {
+ // TODO: implement this method
+ return false;
}
@Override