blob: 4b7eeca174b2a0e763f13de307a4e4f341fffcf1 [file] [log] [blame]
Jonathan Hart23701d12014-04-03 10:45:48 -07001package net.onrc.onos.core.linkdiscovery.web;
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -08002
Jonathan Hart23701d12014-04-03 10:45:48 -07003import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -08004
5import org.restlet.data.Status;
6import org.restlet.resource.Get;
7import org.restlet.resource.ServerResource;
8import org.slf4j.Logger;
9import org.slf4j.LoggerFactory;
10
11public class AutoPortFast extends ServerResource {
Yuta HIGUCHI6ac8d182013-10-22 15:24:56 -070012 protected final static Logger log = LoggerFactory.getLogger(AutoPortFast.class);
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -080013
14 @Get("json")
15 public String retrieve() {
16 ILinkDiscoveryService linkDiscovery;
Ray Milkey269ffb92014-04-03 14:43:30 -070017 linkDiscovery = (ILinkDiscoveryService) getContext().getAttributes().
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -080018 get(ILinkDiscoveryService.class.getCanonicalName());
19
Ray Milkey269ffb92014-04-03 14:43:30 -070020 String param = ((String) getRequestAttributes().get("state")).toLowerCase();
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -080021 if (param.equals("enable") || param.equals("true")) {
22 linkDiscovery.setAutoPortFastFeature(true);
23 } else if (param.equals("disable") || param.equals("false")) {
24 linkDiscovery.setAutoPortFastFeature(false);
25 }
26 setStatus(Status.SUCCESS_OK, "OK");
27 if (linkDiscovery.isAutoPortFastFeature())
28 return "enabled";
29 else return "disabled";
30 }
31}