blob: dbf87506afe2cab144ef44d9acbc4664da73bc73 [file] [log] [blame]
Jonathan Hart062a2e82014-02-03 09:41:57 -08001package net.onrc.onos.ofcontroller.networkgraph;
2
3import org.openflow.protocol.OFPhysicalPort;
4
5import net.floodlightcontroller.core.IOFSwitch;
6
7public class FloodlightToOnosMappers {
8
9 public static Switch map(NetworkGraph graph, IOFSwitch sw) {
Toshio Koide2f570c12014-02-06 16:55:32 -080010 SwitchImpl onosSwitch = new SwitchImpl(graph, sw.getId());
Yuta HIGUCHIe1d92762014-02-06 12:05:52 -080011
Jonathan Hart062a2e82014-02-03 09:41:57 -080012 for (OFPhysicalPort port : sw.getPorts()) {
Toshio Koide2f570c12014-02-06 16:55:32 -080013 onosSwitch.addPort(map(graph, onosSwitch, port));
Jonathan Hart062a2e82014-02-03 09:41:57 -080014 }
Yuta HIGUCHIe1d92762014-02-06 12:05:52 -080015
Jonathan Hart062a2e82014-02-03 09:41:57 -080016 return onosSwitch;
17 }
Yuta HIGUCHIe1d92762014-02-06 12:05:52 -080018
Toshio Koide2f570c12014-02-06 16:55:32 -080019 public static Port map(NetworkGraph graph, SwitchImpl sw, OFPhysicalPort port) {
Toshio Koide5799b602014-02-10 15:29:06 -080020 PortImpl onosPort = new PortImpl(graph, sw, Long.valueOf(port.getPortNumber()));
Jonathan Hart891d0502014-02-10 10:04:08 -080021 onosPort.setDescription(port.getName());
Jonathan Hart062a2e82014-02-03 09:41:57 -080022 return onosPort;
23 }
Yuta HIGUCHIe1d92762014-02-06 12:05:52 -080024
Jonathan Hart062a2e82014-02-03 09:41:57 -080025 public static Link map(NetworkGraph graph, net.floodlightcontroller.routing.Link link) {
Jonathan Hart891d0502014-02-10 10:04:08 -080026 //Port srcPort = graph.getSwitch(link.getSrc()).getPort(Long.valueOf(link.getSrcPort()));
27 //Port dstPort = graph.getSwitch(link.getDst()).getPort(Long.valueOf(link.getDstPort()));
28 //LinkImpl onosLink = new LinkImpl(graph, srcPort, dstPort);
29 LinkImpl onosLink = new LinkImpl(graph, link.getSrc(), (long)link.getSrcPort(),
30 link.getDst(), (long)link.getDstPort());
31
Jonathan Hart062a2e82014-02-03 09:41:57 -080032 return onosLink;
Jonathan Hart062a2e82014-02-03 09:41:57 -080033 }
34}