fixing vlan_push in 1.0 environments, ie. it does nothing
Change-Id: Ia29c9ef3d93d40216c90a6c7e89c7fb2125ce55b
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
index 47b5a30..6d7e2e1 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
@@ -135,6 +135,7 @@
private List<OFAction> buildActions() {
List<OFAction> acts = new LinkedList<>();
+ OFAction act;
if (treatment == null) {
return acts;
}
@@ -144,10 +145,16 @@
log.warn("Saw drop action; assigning drop action");
return Collections.emptyList();
case L2MODIFICATION:
- acts.add(buildL2Modification(i));
+ act = buildL2Modification(i);
+ if (act != null) {
+ acts.add(buildL2Modification(i));
+ }
break;
case L3MODIFICATION:
- acts.add(buildL3Modification(i));
+ act = buildL3Modification(i);
+ if (act != null) {
+ acts.add(buildL3Modification(i));
+ }
break;
case OUTPUT:
OutputInstruction out = (OutputInstruction) i;
@@ -209,6 +216,8 @@
return factory().actions().setVlanPcp(VlanPcp.of(vlanPcp.vlanPcp()));
case VLAN_POP:
return factory().actions().stripVlan();
+ case VLAN_PUSH:
+ return null;
default:
log.warn("Unimplemented action type {}.", l2m.subtype());
break;