diff options
Diffstat (limited to 'framework/src/onos/web/api/src/main/java/org/onosproject/rest/resources/PathsWebResource.java')
-rw-r--r-- | framework/src/onos/web/api/src/main/java/org/onosproject/rest/resources/PathsWebResource.java | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/framework/src/onos/web/api/src/main/java/org/onosproject/rest/resources/PathsWebResource.java b/framework/src/onos/web/api/src/main/java/org/onosproject/rest/resources/PathsWebResource.java deleted file mode 100644 index 9968d1e7..00000000 --- a/framework/src/onos/web/api/src/main/java/org/onosproject/rest/resources/PathsWebResource.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright 2015 Open Networking Laboratory - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.onosproject.rest.resources; - -import org.onosproject.net.DeviceId; -import org.onosproject.net.ElementId; -import org.onosproject.net.HostId; -import org.onosproject.net.topology.PathService; -import org.onosproject.rest.AbstractWebResource; - -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.MediaType; -import javax.ws.rs.core.Response; -import java.util.Set; - -/** - * Compute paths in the network graph. - */ -@Path("paths") -public class PathsWebResource extends AbstractWebResource { - - /** - * Determines if the id appears to be the id of a host. - * Host id format is 00:00:00:00:00:01/-1 - * - * @param id id string - * @return HostId if the id is valid, null otherwise - */ - private HostId isHostId(String id) { - return id.matches("..:..:..:..:..:../.*") ? HostId.hostId(id) : null; - } - - /** - * Returns either host id or device id, depending on the ID format. - * - * @param id host or device id string - * @return element id - */ - private ElementId elementId(String id) { - ElementId elementId = isHostId(id); - return elementId != null ? elementId : DeviceId.deviceId(id); - } - - /** - * Get all shortest paths between any two hosts or devices. - * Returns array of all shortest paths between any two elements. - * @onos.rsModel Paths - * @param src source identifier - * @param dst destination identifier - * @return path data - */ - @GET - @Produces(MediaType.APPLICATION_JSON) - @Path("{src}/{dst}") - public Response getPath(@PathParam("src") String src, - @PathParam("dst") String dst) { - PathService pathService = get(PathService.class); - Set<org.onosproject.net.Path> paths = - pathService.getPaths(elementId(src), elementId(dst)); - return ok(encodeArray(org.onosproject.net.Path.class, "paths", paths)).build(); - } - - /** - * Get all shortest disjoint paths between any two hosts or devices. - * Returns array of all shortest disjoint paths between any two elements. - * @onos.rsModel Paths - * @param src source identifier - * @param dst destination identifier - * @return path data - */ - @GET - @Produces(MediaType.APPLICATION_JSON) - @Path("{src}/{dst}/disjoint") - public Response getDisjointPath(@PathParam("src") String src, - @PathParam("dst") String dst) { - PathService pathService = get(PathService.class); - Set<org.onosproject.net.DisjointPath> paths = - pathService.getDisjointPaths(elementId(src), elementId(dst)); - return ok(encodeArray(org.onosproject.net.DisjointPath.class, "paths", paths)).build(); - } -} |