FIX for ONOS-5296:Wrong MetricName throwing NPE

Change-Id: I625640fba84bd2fabd140d6449cdceb0079ad3f4
(cherry picked from commit f5c17fd79bc187c4fbf97248274365aed9afeccb)
diff --git a/web/api/src/main/java/org/onosproject/rest/resources/MetricsWebResource.java b/web/api/src/main/java/org/onosproject/rest/resources/MetricsWebResource.java
index 31f23dd..d16c62c 100644
--- a/web/api/src/main/java/org/onosproject/rest/resources/MetricsWebResource.java
+++ b/web/api/src/main/java/org/onosproject/rest/resources/MetricsWebResource.java
@@ -28,6 +28,7 @@
 import com.google.common.collect.TreeMultimap;
 import org.onlab.metrics.MetricsService;
 import org.onosproject.rest.AbstractWebResource;
+import org.onlab.util.ItemNotFoundException;
 
 import javax.ws.rs.GET;
 import javax.ws.rs.Path;
@@ -44,6 +45,8 @@
 @Path("metrics")
 public class MetricsWebResource extends AbstractWebResource {
 
+    private static final String E_METRIC_NAME_NOT_FOUND = "Metric Name is not found";
+
     private final MetricsService service = get(MetricsService.class);
     private final ObjectNode root = mapper().createObjectNode();
 
@@ -84,6 +87,10 @@
         MetricFilter filter = metricName != null ? (name, metric) -> name.equals(metricName) : MetricFilter.ALL;
         TreeMultimap<String, Metric> matched = listMetrics(service, filter);
 
+        if (matched.isEmpty()) {
+            throw new ItemNotFoundException(E_METRIC_NAME_NOT_FOUND);
+        }
+
         matched.asMap().get(metricName).forEach(m -> {
             metricNode.set(metricName, codec(Metric.class).encode(m, this));
         });