Added getFactory() method to IOFSwitch to get a message factory appropriate
for the switch's OpenFlow version.
This prevents users of the switch having to discriminate what factory to use
based on the switch OpenFlow version.
Change-Id: Iac0454856e35f4429649a6f116da34f4c048f25d
diff --git a/src/main/java/net/onrc/onos/core/linkdiscovery/LinkDiscoveryManager.java b/src/main/java/net/onrc/onos/core/linkdiscovery/LinkDiscoveryManager.java
index 4c87501..fbd06b7 100644
--- a/src/main/java/net/onrc/onos/core/linkdiscovery/LinkDiscoveryManager.java
+++ b/src/main/java/net/onrc/onos/core/linkdiscovery/LinkDiscoveryManager.java
@@ -57,7 +57,6 @@
import net.onrc.onos.core.registry.IControllerRegistryService;
import net.onrc.onos.core.util.SwitchPort;
-import org.projectfloodlight.openflow.protocol.OFFactories;
import org.projectfloodlight.openflow.protocol.OFFactory;
import org.projectfloodlight.openflow.protocol.OFMessage;
import org.projectfloodlight.openflow.protocol.OFPacketIn;
@@ -68,7 +67,6 @@
import org.projectfloodlight.openflow.protocol.OFPortState;
import org.projectfloodlight.openflow.protocol.OFPortStatus;
import org.projectfloodlight.openflow.protocol.OFType;
-import org.projectfloodlight.openflow.protocol.OFVersion;
import org.projectfloodlight.openflow.protocol.action.OFAction;
import org.projectfloodlight.openflow.types.OFBufferId;
import org.projectfloodlight.openflow.types.OFPort;
@@ -106,9 +104,6 @@
private static final Logger log =
LoggerFactory.getLogger(LinkDiscoveryManager.class);
- // TODO Remove these factories.
- protected OFFactory factory13 = OFFactories.getFactory(OFVersion.OF_13);
- protected OFFactory factory10 = OFFactories.getFactory(OFVersion.OF_10);
private IFloodlightProviderService controller;
@@ -322,8 +317,7 @@
sw, port);
}
- OFFactory factory = (iofSwitch.getOFVersion() == OFVersion.OF_10)
- ? factory10 : factory13;
+ OFFactory factory = iofSwitch.getFactory();
OFPacketOut po = createLLDPPacketOut(sw, ofpPort, isReverse, factory);
try {