adding purge option to IntentRemoveCommand

Change-Id: Ic97acd9a8308355cd3135ea5df0a470b3579106e
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentService.java b/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
index 0d14a38..b86d793 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentService.java
@@ -112,4 +112,11 @@
      * @param listener listener to be removed
      */
     void removeListener(IntentListener listener);
+
+    /**
+     * Purges a specific intent from the system if it is FAILED or WITHDRAWN.
+     *
+     * @param key key of the intent to purge
+     */
+    void purge(Key key);
 }
diff --git a/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java b/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
index 5cfae17..2bf1ef1 100644
--- a/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
+++ b/core/api/src/main/java/org/onosproject/net/intent/IntentStore.java
@@ -109,4 +109,10 @@
      * @return pending intents
      */
     Iterable<Intent> getPending();
+
+    /** Purges a specific intent from the system if it is FAILED or WITHDRAWN.
+     *
+     * @param key key of the intent to purge
+     */
+    void purge(Key key);
 }
diff --git a/core/api/src/test/java/org/onosproject/net/intent/FakeIntentManager.java b/core/api/src/test/java/org/onosproject/net/intent/FakeIntentManager.java
index 3d2475b..f232cbc 100644
--- a/core/api/src/test/java/org/onosproject/net/intent/FakeIntentManager.java
+++ b/core/api/src/test/java/org/onosproject/net/intent/FakeIntentManager.java
@@ -230,6 +230,11 @@
         listeners.remove(listener);
     }
 
+    @Override
+    public void purge(Key key) {
+        // FIXME implement this
+    }
+
     private void dispatch(IntentEvent event) {
         for (IntentListener listener : listeners) {
             listener.event(event);
diff --git a/core/api/src/test/java/org/onosproject/net/intent/IntentServiceAdapter.java b/core/api/src/test/java/org/onosproject/net/intent/IntentServiceAdapter.java
index d100121..2d912eb 100644
--- a/core/api/src/test/java/org/onosproject/net/intent/IntentServiceAdapter.java
+++ b/core/api/src/test/java/org/onosproject/net/intent/IntentServiceAdapter.java
@@ -76,4 +76,9 @@
     public void removeListener(IntentListener listener) {
 
     }
+
+    @Override
+    public void purge(Key key) {
+
+    }
 }