Refactoring of IntentId based APIs
- getIntent
- getIntentState
- getInstallableIntents
Change-Id: I6d2073dfa165e0e5adcef46fe5908b563b481a43
diff --git a/web/api/src/main/java/org/onosproject/rest/IntentsWebResource.java b/web/api/src/main/java/org/onosproject/rest/IntentsWebResource.java
index 75287e0..3e20c5d 100644
--- a/web/api/src/main/java/org/onosproject/rest/IntentsWebResource.java
+++ b/web/api/src/main/java/org/onosproject/rest/IntentsWebResource.java
@@ -24,8 +24,8 @@
import org.onosproject.net.intent.HostToHostIntent;
import org.onosproject.net.intent.Intent;
-import org.onosproject.net.intent.IntentId;
import org.onosproject.net.intent.IntentService;
+import org.onosproject.net.intent.Key;
import org.onosproject.net.intent.PointToPointIntent;
import com.fasterxml.jackson.databind.node.ObjectNode;
@@ -54,15 +54,15 @@
/**
* Gets a single intent by Id.
*
- * @param id Id to look up
+ * @param key Id to look up
* @return intent data
*/
@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("{id}")
- public Response getIntentById(@PathParam("id") long id) {
+ public Response getIntentById(@PathParam("id") String key) {
final Intent intent = nullIsNotFound(get(IntentService.class)
- .getIntent(IntentId.valueOf(id)),
+ .getIntent(Key.of(key, null)),
INTENT_NOT_FOUND);
final ObjectNode root;
if (intent instanceof HostToHostIntent) {
diff --git a/web/api/src/test/java/org/onosproject/rest/IntentsResourceTest.java b/web/api/src/test/java/org/onosproject/rest/IntentsResourceTest.java
index 3289c87..35a15d5 100644
--- a/web/api/src/test/java/org/onosproject/rest/IntentsResourceTest.java
+++ b/web/api/src/test/java/org/onosproject/rest/IntentsResourceTest.java
@@ -35,8 +35,8 @@
import org.onosproject.core.IdGenerator;
import org.onosproject.net.NetworkResource;
import org.onosproject.net.intent.Intent;
-import org.onosproject.net.intent.IntentId;
import org.onosproject.net.intent.IntentService;
+import org.onosproject.net.intent.Key;
import com.eclipsesource.json.JsonArray;
import com.eclipsesource.json.JsonObject;
@@ -339,7 +339,7 @@
intents.add(intent);
- expect(mockIntentService.getIntent(IntentId.valueOf(0)))
+ expect(mockIntentService.getIntent(Key.of(0, APP_ID)))
.andReturn(intent)
.anyTimes();
replay(mockIntentService);
@@ -356,7 +356,7 @@
@Test
public void testBadGet() {
- expect(mockIntentService.getIntent(IntentId.valueOf(0)))
+ expect(mockIntentService.getIntent(Key.of(0, APP_ID)))
.andReturn(null)
.anyTimes();
replay(mockIntentService);
diff --git a/web/gui/src/main/java/org/onosproject/gui/TopologyViewIntentFilter.java b/web/gui/src/main/java/org/onosproject/gui/TopologyViewIntentFilter.java
index 24a9327..0549604 100644
--- a/web/gui/src/main/java/org/onosproject/gui/TopologyViewIntentFilter.java
+++ b/web/gui/src/main/java/org/onosproject/gui/TopologyViewIntentFilter.java
@@ -110,7 +110,7 @@
// Search through all intents and see if they are relevant to our search.
for (Intent intent : sourceIntents) {
- if (intentService.getIntentState(intent.id()) == INSTALLED) {
+ if (intentService.getIntentState(intent.key()) == INSTALLED) {
boolean isRelevant = false;
if (intent instanceof HostToHostIntent) {
isRelevant = isIntentRelevantToHosts((HostToHostIntent) intent, hosts) &&
@@ -157,7 +157,7 @@
// Indicates whether the specified intent involves all of the given devices.
private boolean isIntentRelevantToDevices(Intent intent, Iterable<Device> devices) {
- List<Intent> installables = intentService.getInstallableIntents(intent.id());
+ List<Intent> installables = intentService.getInstallableIntents(intent.key());
for (Device device : devices) {
if (!isIntentRelevantToDevice(installables, device)) {
return false;
@@ -228,7 +228,7 @@
Link ccDst = getFirstLink(opticalIntent.getDst(), true);
for (Intent intent : intents) {
- List<Intent> installables = intentService.getInstallableIntents(intent.id());
+ List<Intent> installables = intentService.getInstallableIntents(intent.key());
for (Intent installable : installables) {
if (installable instanceof PathIntent) {
List<Link> links = ((PathIntent) installable).path().links();
diff --git a/web/gui/src/main/java/org/onosproject/gui/TopologyViewMessages.java b/web/gui/src/main/java/org/onosproject/gui/TopologyViewMessages.java
index 599881c..746c37e 100644
--- a/web/gui/src/main/java/org/onosproject/gui/TopologyViewMessages.java
+++ b/web/gui/src/main/java/org/onosproject/gui/TopologyViewMessages.java
@@ -672,7 +672,7 @@
for (TrafficClass trafficClass : trafficClasses) {
for (Intent intent : trafficClass.intents) {
boolean isOptical = intent instanceof OpticalConnectivityIntent;
- List<Intent> installables = intentService.getInstallableIntents(intent.id());
+ List<Intent> installables = intentService.getInstallableIntents(intent.key());
if (installables != null) {
for (Intent installable : installables) {
String type = isOptical ? trafficClass.type + " optical" : trafficClass.type;