blob: 92317cf0a18a8c67a4b05ef96829ec286269002d [file] [log] [blame]
Pavlin Radoslavov5ab68512013-02-18 09:59:33 -08001package net.floodlightcontroller.flowcache.web;
2
3import java.util.ArrayList;
4
5import net.floodlightcontroller.flowcache.IFlowService;
6import net.floodlightcontroller.util.FlowPath;
7
8import org.restlet.resource.Get;
9import org.restlet.resource.ServerResource;
10import org.slf4j.Logger;
11import org.slf4j.LoggerFactory;
12
13public class GetAllFlowsResource extends ServerResource {
14 protected static Logger log = LoggerFactory.getLogger(GetAllFlowsResource.class);
15
16 @Get("json")
17 public ArrayList<FlowPath> retrieve() {
Pavlin Radoslavovb6f53542013-03-01 16:02:14 -080018 ArrayList<FlowPath> result = null;
Pavlin Radoslavov5ab68512013-02-18 09:59:33 -080019
20 IFlowService flowService =
21 (IFlowService)getContext().getAttributes().
22 get(IFlowService.class.getCanonicalName());
23
24 if (flowService == null) {
25 log.debug("ONOS Flow Service not found");
26 return result;
27 }
28
29 // Extract the arguments
30 log.debug("Get All Flows Endpoints");
31
Pavlin Radoslavovb6f53542013-03-01 16:02:14 -080032 result = flowService.getAllFlows();
Pavlin Radoslavov5ab68512013-02-18 09:59:33 -080033
34 return result;
35 }
36}