ONOS-6071 adding Mods for protection links

Change-Id: I116f6af0044debac635e9a8ddeae12ab43bb1fe6
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/ProtectedIntentMonitor.java b/web/gui/src/main/java/org/onosproject/ui/impl/ProtectedIntentMonitor.java
index 5d928a0..3a92428 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/ProtectedIntentMonitor.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/ProtectedIntentMonitor.java
@@ -17,6 +17,7 @@
 package org.onosproject.ui.impl;
 
 import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Sets;
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.ElementId;
@@ -38,6 +39,7 @@
 import org.onosproject.ui.topo.Highlights;
 import org.onosproject.ui.topo.HostHighlight;
 import org.onosproject.ui.topo.LinkHighlight.Flavor;
+import org.onosproject.ui.topo.Mod;
 import org.onosproject.ui.topo.NodeHighlight;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -60,7 +62,18 @@
 
     private static final Logger log =
             LoggerFactory.getLogger(ProtectedIntentMonitor.class);
-    public static final String PRIMARY_PATH_TAG = "protection1";
+    private static final String PRIMARY_PATH_TAG = "protection1";
+
+    private static final String PROT_PRIMARY = "protPrimary";
+    private static final String PROT_BACKUP = "protBackup";
+
+
+    private static final Mod MOD_PROT_PRIMARY = new Mod(PROT_PRIMARY);
+    private static final Set<Mod> PROTECTED_MOD_PRIMARY_SET = ImmutableSet.of(MOD_PROT_PRIMARY);
+
+    private static final Mod MOD_PROT_BACKUP = new Mod(PROT_BACKUP);
+    private static final Set<Mod> PROTECTED_MOD_BACKUP_SET = ImmutableSet.of(MOD_PROT_BACKUP);
+
 
     /**
      * Designates the different modes of operation.
@@ -202,10 +215,13 @@
                 //Flavor is swapped so green is primary path.
                 if (usingBackup(primary)) {
                     //the backup becomes in use so we have a dotted line
-                    processLinks(linkMap, backup, Flavor.PRIMARY_HIGHLIGHT, isOptical, true);
+                    processLinks(linkMap, backup, Flavor.PRIMARY_HIGHLIGHT,
+                                 isOptical, true, PROTECTED_MOD_BACKUP_SET);
                 } else {
-                    processLinks(linkMap, primary, Flavor.SECONDARY_HIGHLIGHT, isOptical, true);
-                    processLinks(linkMap, backup, Flavor.PRIMARY_HIGHLIGHT, isOptical, false);
+                    processLinks(linkMap, primary, Flavor.PRIMARY_HIGHLIGHT,
+                                 isOptical, true, PROTECTED_MOD_PRIMARY_SET);
+                    processLinks(linkMap, backup, Flavor.SECONDARY_HIGHLIGHT,
+                                 isOptical, false, PROTECTED_MOD_BACKUP_SET);
                 }
                 updateHighlights(highlights, primary);
                 updateHighlights(highlights, backup);
@@ -279,7 +295,7 @@
 
     private void processLinks(TrafficLinkMap linkMap, Iterable<Link> links,
                               Flavor flavor, boolean isOptical,
-                              boolean showTraffic) {
+                              boolean showTraffic, Set<Mod> mods) {
         if (links != null) {
             for (Link link : links) {
                 TrafficLink tlink = linkMap.add(link);
@@ -288,6 +304,7 @@
                 if (showTraffic) {
                     tlink.antMarch(true);
                 }
+                tlink.tagMods(mods);
             }
         }
     }