blob: e5df25e54ad25220aa907e4afb2433a7b47ec2f2 [file] [log] [blame]
Pankaj Berded1259e82013-01-23 14:10:00 -08001package net.floodlightcontroller.core;
2
3import java.util.List;
4
Pankaj Berde1e2f7312013-02-15 08:25:31 -08005import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
Pankaj Berded1259e82013-01-23 14:10:00 -08006import net.floodlightcontroller.routing.Link;
7import net.floodlightcontroller.topology.NodePortTuple;
8
9public interface INetMapTopologyService extends INetMapService {
10
11 public interface ITopoSwitchService {
Pankaj Berdeff421802013-01-29 20:28:52 -080012 Iterable<ISwitchObject> GetActiveSwitches();
13 Iterable<ISwitchObject> GetAllSwitches();
14 Iterable<ISwitchObject> GetInactiveSwitches();
Pankaj Berded1259e82013-01-23 14:10:00 -080015 List<String> GetPortsOnSwitch(String dpid);
16 }
17
18 public interface ITopoLinkService {
19 List<Link> GetActiveLinks();
20 List<Link> GetLinksOnSwitch(String dpid);
21 }
22 public interface ITopoDeviceService {
23 List<Link> GetActiveDevices();
24 List<Link> GetDevicesOnSwitch(String dpid);
25 }
26
27 public interface ITopoRouteService {
Pankaj Berdeff421802013-01-29 20:28:52 -080028 List<NodePortTuple> GetShortestPath(NodePortTuple src, NodePortTuple dest);
Pankaj Berded1259e82013-01-23 14:10:00 -080029 Boolean RouteExists(NodePortTuple src, NodePortTuple dest);
30 }
31
32 public interface ITopoFlowService {
33 Boolean FlowExists(NodePortTuple src, NodePortTuple dest);
34 List<NodePortTuple> GetShortestFlowPath(NodePortTuple src, NodePortTuple dest);
35
36 }
37}