Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 1 | package net.floodlightcontroller.core; |
| 2 | |
| 3 | import java.util.List; |
| 4 | |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 5 | import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject; |
| 6 | import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject; |
Pankaj Berde | 1e2f731 | 2013-02-15 08:25:31 -0800 | [diff] [blame] | 7 | import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject; |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 8 | import net.floodlightcontroller.routing.Link; |
| 9 | import net.floodlightcontroller.topology.NodePortTuple; |
| 10 | |
| 11 | public interface INetMapTopologyService extends INetMapService { |
| 12 | |
| 13 | public interface ITopoSwitchService { |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 14 | Iterable<ISwitchObject> getActiveSwitches(); |
| 15 | Iterable<ISwitchObject> getAllSwitches(); |
| 16 | Iterable<ISwitchObject> getInactiveSwitches(); |
| 17 | Iterable<IPortObject> getPortsOnSwitch(String dpid); |
| 18 | IPortObject getPortOnSwitch(String dpid, short port_num); |
| 19 | |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 20 | } |
| 21 | |
| 22 | public interface ITopoLinkService { |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 23 | List<Link> getActiveLinks(); |
| 24 | List<Link> getLinksOnSwitch(String dpid); |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 25 | } |
| 26 | public interface ITopoDeviceService { |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 27 | Iterable<IDeviceObject> getActiveDevices(); |
| 28 | Iterable<IDeviceObject> getDevicesOnSwitch(String dpid); |
| 29 | Iterable<IDeviceObject> getDevicesOnSwitch(String dpid, short port_num); |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 30 | } |
| 31 | |
| 32 | public interface ITopoRouteService { |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 33 | List<NodePortTuple> getShortestPath(NodePortTuple src, NodePortTuple dest); |
| 34 | Boolean routeExists(NodePortTuple src, NodePortTuple dest); |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 35 | } |
| 36 | |
| 37 | public interface ITopoFlowService { |
Pankaj Berde | 2497e54 | 2013-02-19 18:51:24 -0800 | [diff] [blame^] | 38 | Boolean flowExists(NodePortTuple src, NodePortTuple dest); |
| 39 | List<NodePortTuple> getShortestFlowPath(NodePortTuple src, NodePortTuple dest); |
Pankaj Berde | d1259e8 | 2013-01-23 14:10:00 -0800 | [diff] [blame] | 40 | |
| 41 | } |
| 42 | } |