Adding support for writing metadata instruction.
Needed by Centec driver.
Change-Id: I705015c4d7ac881c273a01b36b05d39d9cd9ba87
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
index 61bda98..61f669c 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
@@ -16,6 +16,7 @@
package org.onosproject.provider.of.flow.impl;
import com.google.common.collect.Lists;
+
import org.onlab.packet.Ip4Address;
import org.onlab.packet.Ip4Prefix;
import org.onlab.packet.Ip6Address;
@@ -56,6 +57,7 @@
import org.projectfloodlight.openflow.protocol.instruction.OFInstructionApplyActions;
import org.projectfloodlight.openflow.protocol.instruction.OFInstructionGotoTable;
import org.projectfloodlight.openflow.protocol.instruction.OFInstructionWriteActions;
+import org.projectfloodlight.openflow.protocol.instruction.OFInstructionWriteMetadata;
import org.projectfloodlight.openflow.protocol.match.Match;
import org.projectfloodlight.openflow.protocol.match.MatchField;
import org.projectfloodlight.openflow.protocol.oxm.OFOxm;
@@ -219,6 +221,9 @@
.getTableId().getValue()));
break;
case WRITE_METADATA:
+ OFInstructionWriteMetadata m = (OFInstructionWriteMetadata) in;
+ builder.writeMetadata(m.getMetadata().getValue(),
+ m.getMetadataMask().getValue());
break;
case WRITE_ACTIONS:
builder.deferred();