Revert part of the changes in Ofdpa2Pipeline

It is possible that one of vidCriterion and ethCriterion is missing
We should just skip the corresponding table and proceed

Change-Id: I220e4efb8c8d5c163f541ad41e0a4d80b6286afe
diff --git a/drivers/default/src/main/java/org/onosproject/driver/pipeline/Ofdpa2Pipeline.java b/drivers/default/src/main/java/org/onosproject/driver/pipeline/Ofdpa2Pipeline.java
index ec61771..eca8412 100644
--- a/drivers/default/src/main/java/org/onosproject/driver/pipeline/Ofdpa2Pipeline.java
+++ b/drivers/default/src/main/java/org/onosproject/driver/pipeline/Ofdpa2Pipeline.java
@@ -335,9 +335,8 @@
         }
 
         if (ethCriterion == null || ethCriterion.mac().equals(MacAddress.NONE)) {
-            log.warn("filtering objective missing dstMac, cannot program TMAC table");
-            fail(filt, ObjectiveError.BADPARAMS);
-            return;
+            // NOTE: it is possible that a filtering objective only has vidCriterion
+            log.debug("filtering objective missing dstMac, cannot program TMAC table");
         } else {
             for (FlowRule tmacRule : processEthDstFilter(portCriterion, ethCriterion,
                                                          vidCriterion, assignedVlan,
@@ -348,11 +347,10 @@
             }
         }
 
-        if (ethCriterion == null || vidCriterion == null) {
-            log.warn("filtering objective missing dstMac or VLAN, "
+        if (vidCriterion == null) {
+            // NOTE: it is possible that a filtering objective only has ethCriterion
+            log.debug("filtering objective missing dstMac or VLAN, "
                     + "cannot program VLAN Table");
-            fail(filt, ObjectiveError.BADPARAMS);
-            return;
         } else {
             /*
              * NOTE: Separate vlan filtering rules and assignment rules