[ONOS-5599] Recover OF multi part meter features stats message as part of handshake.
Change-Id: I047f1c9b1512b136cc441c8d0822ba2552f2d92e
diff --git a/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/AbstractOpenFlowSwitch.java b/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/AbstractOpenFlowSwitch.java
index 465dd06..128863e 100644
--- a/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/AbstractOpenFlowSwitch.java
+++ b/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/AbstractOpenFlowSwitch.java
@@ -30,6 +30,7 @@
import org.projectfloodlight.openflow.protocol.OFFactory;
import org.projectfloodlight.openflow.protocol.OFFeaturesReply;
import org.projectfloodlight.openflow.protocol.OFMessage;
+import org.projectfloodlight.openflow.protocol.OFMeterFeaturesStatsReply;
import org.projectfloodlight.openflow.protocol.OFNiciraControllerRoleRequest;
import org.projectfloodlight.openflow.protocol.OFPortDesc;
import org.projectfloodlight.openflow.protocol.OFPortDescStatsReply;
@@ -82,6 +83,8 @@
protected OFFeaturesReply features;
protected OFDescStatsReply desc;
+ protected OFMeterFeaturesStatsReply meterfeatures;
+
// messagesPendingMastership is used as synchronization variable for
// all mastership related changes. In this block, mastership (including
// role update) will have either occurred or not.
@@ -242,6 +245,11 @@
}
@Override
+ public void setMeterFeaturesReply(OFMeterFeaturesStatsReply meterFeaturesReply) {
+ meterfeatures = meterFeaturesReply;
+ }
+
+ @Override
public abstract Boolean supportNxRole();
//************************
diff --git a/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/OpenFlowSwitchDriver.java b/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/OpenFlowSwitchDriver.java
index 9cc0291..fc38aeb 100644
--- a/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/OpenFlowSwitchDriver.java
+++ b/protocols/openflow/api/src/main/java/org/onosproject/openflow/controller/driver/OpenFlowSwitchDriver.java
@@ -23,6 +23,7 @@
import org.projectfloodlight.openflow.protocol.OFErrorMsg;
import org.projectfloodlight.openflow.protocol.OFFeaturesReply;
import org.projectfloodlight.openflow.protocol.OFMessage;
+import org.projectfloodlight.openflow.protocol.OFMeterFeaturesStatsReply;
import org.projectfloodlight.openflow.protocol.OFPortDescStatsReply;
import org.projectfloodlight.openflow.protocol.OFVersion;
@@ -134,6 +135,12 @@
void setFeaturesReply(OFFeaturesReply featuresReply);
/**
+ * Sets the meter features reply for this switch.
+ * @param meterFeaturesReply the meter features to set.
+ */
+ void setMeterFeaturesReply(OFMeterFeaturesStatsReply meterFeaturesReply);
+
+ /**
* Sets the switch description.
* @param desc the descriptions
*/