blob: 88085efe7d3db331f2696510beae7481438e77d2 [file] [log] [blame]
Jonathan Hart472062d2014-04-03 10:56:48 -07001package net.onrc.onos.core.topology.web;
Jonathan Hart47016712014-02-07 12:41:35 -08002
Jonathan Harta99ec672014-04-03 11:30:34 -07003import net.floodlightcontroller.restserver.RestletRoutable;
4
Jonathan Hart47016712014-02-07 12:41:35 -08005import org.restlet.Context;
6import org.restlet.Restlet;
7import org.restlet.routing.Router;
8
Jonathan Harte37e4e22014-05-13 19:12:02 -07009public class TopologyWebRoutable implements RestletRoutable {
Jonathan Hart47016712014-02-07 12:41:35 -080010
Ray Milkey269ffb92014-04-03 14:43:30 -070011 @Override
12 public Restlet getRestlet(Context context) {
13 Router router = new Router(context);
Ray Milkey269ffb92014-04-03 14:43:30 -070014 // debug API to dump datastore content
15 router.attach("/ds/switches/json", DatastoreSwitchesResource.class);
16 router.attach("/ds/links/json", DatastoreLinksResource.class);
17 router.attach("/ds/ports/json", DatastorePortsResource.class);
Yuta HIGUCHIfe1ffe42014-03-26 10:31:46 -070018
Pavlin Radoslavov030fc442014-04-21 13:38:26 -070019 // Topology API
Yuta HIGUCHI2ffc3b72014-06-09 15:38:28 -070020 router.attach("", TopologyResource.class);
Yuta HIGUCHIbfc77f02014-07-14 22:50:25 -070021 router.attach("/hosts", HostsResource.class);
Yuta HIGUCHI2ffc3b72014-06-09 15:38:28 -070022 router.attach("/links", LinksResource.class);
23 router.attach("/switches", SwitchesResource.class);
Ray Milkey269ffb92014-04-03 14:43:30 -070024
25 return router;
26 }
27
28 @Override
29 public String basePath() {
Pavlin Radoslavov030fc442014-04-21 13:38:26 -070030 return "/wm/onos/topology";
Ray Milkey269ffb92014-04-03 14:43:30 -070031 }
Jonathan Hart47016712014-02-07 12:41:35 -080032}