blob: c59cd87e80f1bb2d750e876ca885140927099c34 [file] [log] [blame]
Jonathan Hart6df90172014-04-03 10:13:11 -07001package net.onrc.onos.core.datagrid.web;
Pavlin Radoslavovda7ef612013-10-30 16:12:14 -07002
3import net.floodlightcontroller.restserver.RestletRoutable;
4
5import org.restlet.Context;
6import org.restlet.Restlet;
7import org.restlet.routing.Router;
8
9/**
10 * REST API implementation for the Datagrid.
11 */
12public class DatagridWebRoutable implements RestletRoutable {
13 /**
14 * Create the Restlet router and bind to the proper resources.
15 */
16 @Override
17 public Restlet getRestlet(Context context) {
18 Router router = new Router(context);
Nick Karanatsios8abe7172014-02-19 20:31:48 -080019 router.attach("/add/intents/json", IntentResource.class);
Nick Karanatsiosed645df2014-02-20 23:22:29 -080020 router.attach("/get/intent/{intent_id}/json", IntentResource.class);
Jonathan Hart10a7e2b2014-02-21 18:30:08 -080021 router.attach("/get/ng-events/json", GetNGEventsResource.class);
Pavlin Radoslavov42706b92014-02-28 01:22:55 -080022 router.attach("/get/ng-flows/summary/json", GetNGFlowsSummaryResource.class);
Nick Karanatsios87e8be72014-02-21 23:45:37 -080023 router.attach("/get/intents/{category}/json", IntentResource.class);
24 router.attach("/get/intent/{category}/{intent_id}/json", IntentResource.class);
Nick Karanatsios1f4defb2014-02-23 19:34:47 -080025 router.attach("/delete/intents/json", IntentResource.class);
Pavlin Radoslavovda7ef612013-10-30 16:12:14 -070026 return router;
27 }
28
29 /**
Ray Milkeyb41100a2014-04-10 10:42:15 -070030 * Set the base path for the Topology.
Pavlin Radoslavovda7ef612013-10-30 16:12:14 -070031 */
32 @Override
33 public String basePath() {
Naoki Shiota862cc3b2013-12-13 15:42:50 -080034 return "/wm/onos/datagrid";
Pavlin Radoslavovda7ef612013-10-30 16:12:14 -070035 }
36}