reinstating the key field in FilterObjectives

Change-Id: I25f7d105edd562785cb213f747e7d9e0650f2635
diff --git a/core/common/src/main/java/org/onosproject/codec/impl/CriterionCodec.java b/core/common/src/main/java/org/onosproject/codec/impl/CriterionCodec.java
index 0be03d8..57cff66 100644
--- a/core/common/src/main/java/org/onosproject/codec/impl/CriterionCodec.java
+++ b/core/common/src/main/java/org/onosproject/codec/impl/CriterionCodec.java
@@ -74,6 +74,7 @@
         formatMap.put(Criterion.Type.IPV6_EXTHDR, new FormatIpV6Exthdr());
         formatMap.put(Criterion.Type.OCH_SIGID, new FormatOchSigId());
         formatMap.put(Criterion.Type.OCH_SIGTYPE, new FormatOchSigType());
+        formatMap.put(Criterion.Type.DUMMY, new FormatDummyType());
 
         // Currently unimplemented
         formatMap.put(Criterion.Type.ARP_OP, new FormatUnknown());
@@ -316,6 +317,17 @@
         }
     }
 
+    private class FormatDummyType implements CriterionTypeFormatter {
+
+        @Override
+        public ObjectNode formatCriterion(ObjectNode root, Criterion criterion) {
+            checkNotNull(criterion, "Criterion cannot be null");
+
+            return root.put("type", criterion.type().toString());
+
+        }
+    }
+
     @Override
     public ObjectNode encode(Criterion criterion, CodecContext context) {
         checkNotNull(criterion, "Criterion cannot be null");
@@ -331,4 +343,6 @@
 
         return formatter.formatCriterion(result, criterion);
     }
+
+
 }