Removing stuff.
diff --git a/apps/tvue/src/main/java/org/onlab/onos/tvue/TopologyResource.java b/apps/tvue/src/main/java/org/onlab/onos/tvue/TopologyResource.java
index 283b8fb..b15e80c 100644
--- a/apps/tvue/src/main/java/org/onlab/onos/tvue/TopologyResource.java
+++ b/apps/tvue/src/main/java/org/onlab/onos/tvue/TopologyResource.java
@@ -4,6 +4,7 @@
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import org.onlab.onos.net.ConnectPoint;
+import org.onlab.onos.net.Device;
import org.onlab.onos.net.ElementId;
import org.onlab.onos.net.Link;
import org.onlab.onos.net.device.DeviceService;
@@ -16,7 +17,7 @@
import org.onlab.rest.BaseResource;
import javax.ws.rs.GET;
-import javax.ws.rs.Path;
+import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
import java.util.HashMap;
@@ -24,13 +25,15 @@
import java.util.Map;
import java.util.Set;
+import static org.onlab.onos.net.DeviceId.deviceId;
+
/**
* Topology viewer resource.
*/
-@Path("topology")
+@javax.ws.rs.Path("topology")
public class TopologyResource extends BaseResource {
- @Path("/graph")
+ @javax.ws.rs.Path("/graph")
@GET
@Produces("application/json")
public Response graph() {
@@ -79,6 +82,40 @@
return Response.ok(rootNode.toString()).build();
}
+
+
+ /**
+ * Returns a JSON array of all paths between the specified hosts.
+ *
+ * @param src source host id
+ * @param dst target host id
+ * @return JSON array of paths
+ */
+ @javax.ws.rs.Path("/paths/{src}/{dst}")
+ @GET
+ @Produces("application/json")
+ public Response paths(@PathParam("src") String src, @PathParam("dst") String dst) {
+ ObjectMapper mapper = new ObjectMapper();
+
+ DeviceService deviceService = get(DeviceService.class);
+ TopologyService topologyService = get(TopologyService.class);
+ Topology topology = topologyService.currentTopology();
+
+ ArrayNode pathsNode = mapper.createArrayNode();
+ Device srcDevice = deviceService.getDevice(deviceId(src));
+ Device dstDevice = deviceService.getDevice(deviceId(dst));
+
+// if (srcDevice != null && dstDevice != null) {
+// for (Path path : topologyService.getPaths(topology, srcDevice, dstDevice))
+// pathsNode.add(json(mapper, path));
+// }
+
+ // Now put the vertexes and edges into a root node and ship them off
+ ObjectNode rootNode = mapper.createObjectNode();
+ rootNode.put("paths", pathsNode);
+ return Response.ok(rootNode.toString()).build();
+ }
+
// Scan all links and counts number of them between the same devices
// using a normalized link key.
private Map<String, AggLink> aggregateLinks() {
@@ -96,6 +133,10 @@
return aggLinks;
}
+
+
+
+
// Produces JSON for a graph vertex.
private ObjectNode json(ObjectMapper mapper, ElementId id, int group,
boolean isOnline) {