Multiple meter support added and meter action added for OF1.5
MeterFeaturesFlag added for OF1.5

Change-Id: I84d2785f37ea51b08244de9c54effe5224af9531
diff --git a/core/common/src/test/java/org/onosproject/codec/impl/TrafficTreatmentCodecTest.java b/core/common/src/test/java/org/onosproject/codec/impl/TrafficTreatmentCodecTest.java
index ed87ce0..b014bcf 100644
--- a/core/common/src/test/java/org/onosproject/codec/impl/TrafficTreatmentCodecTest.java
+++ b/core/common/src/test/java/org/onosproject/codec/impl/TrafficTreatmentCodecTest.java
@@ -35,6 +35,7 @@
 import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
+import java.util.Optional;
 
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.is;
@@ -163,9 +164,11 @@
             // check metered
             JsonNode meterNode = getInstNode(jsonInstructions, "METER");
             String jsonMeterId = meterNode != null ? meterNode.get("meterId").asText() : null;
-            if (trafficTreatment.metered() != null) {
-                String meterId = trafficTreatment.metered().meterId().toString();
-                if (!StringUtils.equals(jsonMeterId, meterId)) {
+            if (trafficTreatment.metered() != null && !trafficTreatment.meters().isEmpty()) {
+                Optional<Instructions.MeterInstruction> optional = trafficTreatment.meters().stream().filter(
+                        meterInstruction -> StringUtils.equals(jsonMeterId, meterInstruction.meterId().toString()))
+                        .findAny();
+                if (!optional.isPresent()) {
                     description.appendText("meter id was " + jsonMeterId);
                     return false;
                 }