[AETHER-998] FabricPipeliner should support L2 modification of the NextObjective

This patch allows:
- to MODIFY completely the L3 unicast chain
- to MODIFY the L2 configuration of a port

Moreover, it includes support for metadata signaling:
- to not remove the fwd classifier rules during the port
  update scenarios (dynamic config changes)
- add new unit tests for verifying the scenario

Change-Id: I54168653a730573ec0650f25ec670c36282b0419
diff --git a/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/pipeliner/NextObjectiveTranslator.java b/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/pipeliner/NextObjectiveTranslator.java
index a8c4c6f..07d86c3 100644
--- a/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/pipeliner/NextObjectiveTranslator.java
+++ b/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/pipeliner/NextObjectiveTranslator.java
@@ -492,12 +492,10 @@
     }
 
     private boolean isGroupModifyOp(NextObjective obj) {
-        // If operation is ADD_TO_EXIST, REMOVE_FROM_EXIST or MODIFY, it means we modify
+        // If operation is ADD_TO_EXIST, REMOVE_FROM_EXIST it means we modify
         // group buckets only, no changes for flow rules.
-        // FIXME Please note that for MODIFY op this could not apply in future if we extend the scope of MODIFY
         return obj.op() == Objective.Operation.ADD_TO_EXISTING ||
-                obj.op() == Objective.Operation.REMOVE_FROM_EXISTING ||
-                obj.op() == Objective.Operation.MODIFY;
+                obj.op() == Objective.Operation.REMOVE_FROM_EXISTING;
     }
 
     private boolean isXconnect(NextObjective obj) {