ONOS-1477 - GUI -- Added glyphs to nav menu.

Change-Id: Ifacd5d389bdc2bb5adc61182b8329de9e2557af2
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/MainNavResource.java b/web/gui/src/main/java/org/onosproject/ui/impl/MainNavResource.java
index 7c58250..f134886 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/MainNavResource.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/MainNavResource.java
@@ -51,7 +51,9 @@
     private static final String HDR_FORMAT =
             "<div class=\"nav-hdr\">%s</div>\n";
     private static final String NAV_FORMAT =
-            "<a ng-click=\"navCtrl.hideNav()\" href=\"#/%s\">%s</a>\n";
+            "<a ng-click=\"navCtrl.hideNav()\" href=\"#/%s\">%s %s</a>\n";
+
+    private static final String BLANK_GLYPH = "unknown";
 
     @GET
     @Produces(MediaType.TEXT_HTML)
@@ -110,7 +112,12 @@
 
     private void addCatItems(StringBuilder sb, List<UiView> catViews) {
         for (UiView view : catViews) {
-            sb.append(String.format(NAV_FORMAT, view.id(), view.label()));
+            sb.append(String.format(NAV_FORMAT, view.id(), icon(view), view.label()));
         }
     }
+
+    private String icon(UiView view) {
+        String gid = view.iconId() == null ? BLANK_GLYPH : view.iconId();
+        return "<div icon icon-id=\"" + gid + "\"></div>";
+    }
 }
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
index a924dba..bd17c9f 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/UiExtensionManager.java
@@ -62,14 +62,16 @@
 
     // Creates core UI extension
     private static UiExtension createCoreExtension() {
-        List<UiView> coreViews = of(new UiView(PLATFORM, "app", "Applications"),
-                                    new UiView(PLATFORM, "cluster", "Cluster Nodes"),
-                                    new UiView(NETWORK, "topo", "Topology"),
-                                    new UiView(NETWORK, "device", "Devices"),
-                                    new UiViewHidden("flow"),
-                                    new UiView(NETWORK, "link", "Links"),
-                                    new UiView(NETWORK, "host", "Hosts"),
-                                    new UiView(NETWORK, "intent", "Intents"));
+        List<UiView> coreViews = of(
+                new UiView(PLATFORM, "app", "Applications", "nav_apps"),
+                new UiView(PLATFORM, "cluster", "Cluster Nodes", "nav_cluster"),
+                new UiView(NETWORK, "topo", "Topology", "nav_topo"),
+                new UiView(NETWORK, "device", "Devices", "nav_devs"),
+                new UiViewHidden("flow"),
+                new UiView(NETWORK, "link", "Links", "nav_links"),
+                new UiView(NETWORK, "host", "Hosts", "nav_hosts"),
+                new UiView(NETWORK, "intent", "Intents", "nav_intents")
+        );
 
         UiMessageHandlerFactory messageHandlerFactory =
                 () -> ImmutableList.of(