[onos-5251] This changeset contains implementation of purging intents from ONOS UI
[onos-5251] Addressed review comments from patchset-1
addressed review comments from patchset-2
Change-Id: I93ebe7798b5324fb18738540d3ef6cef6ada395e
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandler.java b/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandler.java
index d48a089..fdfdd1b 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandler.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/TopologyViewMessageHandler.java
@@ -150,6 +150,7 @@
private static final String NAMES = "names";
private static final String ACTIVATE = "activate";
private static final String DEACTIVATE = "deactivate";
+ private static final String PURGE = "purge";
private static final String MY_APP_ID = "org.onosproject.gui";
@@ -438,9 +439,7 @@
Key key = Key.of(intentKey, applicId);
log.debug("Attempting to select intent by key={}", key);
- Intent intent = intentService.getIntent(key);
-
- return intent;
+ return intentService.getIntent(key);
}
private final class RemoveIntent extends RequestHandler {
@@ -448,14 +447,22 @@
super(REMOVE_INTENT);
}
+ private boolean isIntentToBePurged(ObjectNode payload) {
+ return bool(payload, PURGE);
+ }
+
@Override
public void process(long sid, ObjectNode payload) {
Intent intent = findIntentByPayload(payload);
if (intent == null) {
log.warn("Unable to find intent from payload {}", payload);
} else {
- log.debug("Removing intent {}", intent.key());
- intentService.withdraw(intent);
+ log.debug("Withdrawing / Purging intent {}", intent.key());
+ if (isIntentToBePurged(payload)) {
+ intentService.purge(intent);
+ } else {
+ intentService.withdraw(intent);
+ }
}
}
}