ONOS-2033 - GUI -- Buckets in groups view are one per line, Link direction on links view has HTML arrow.

Change-Id: I6adfb49a05fba0160ce60a22ee4b63bac817fca0
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/GroupViewMessageHandler.java b/web/gui/src/main/java/org/onosproject/ui/impl/GroupViewMessageHandler.java
index d7e1047..c7d539b 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/GroupViewMessageHandler.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/GroupViewMessageHandler.java
@@ -103,7 +103,7 @@
         }
 
         private final class BucketFormatter implements CellFormatter {
-            private static final String COMMA = ", ";
+            private static final String BREAK = "<br>";
 
             @Override
             public String format(Object value) {
@@ -121,18 +121,11 @@
                             .append(b.packets())
                             .append(" Actions: ")
                             .append(b.treatment().allInstructions())
-                            .append(COMMA);
+                            .append(BREAK);
                 }
-                removeTrailingComma(sb);
 
                 return sb.toString();
             }
-
-            private StringBuilder removeTrailingComma(StringBuilder sb) {
-                int pos = sb.lastIndexOf(COMMA);
-                sb.delete(pos, sb.length());
-                return sb;
-            }
         }
     }
 }
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/LinkViewMessageHandler.java b/web/gui/src/main/java/org/onosproject/ui/impl/LinkViewMessageHandler.java
index 9d4608a..a311b2d 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/LinkViewMessageHandler.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/LinkViewMessageHandler.java
@@ -125,7 +125,7 @@
         }
 
         private String linkDir(BiLink link) {
-            return link.two != null ? "A <--> B" : "A --> B";
+            return link.two != null ? "A &harr; B" : "A &rarr; B";
         }
     }
 }
diff --git a/web/gui/src/main/webapp/app/view/group/group.html b/web/gui/src/main/webapp/app/view/group/group.html
index ad1e8a1..3bc28c7 100644
--- a/web/gui/src/main/webapp/app/view/group/group.html
+++ b/web/gui/src/main/webapp/app/view/group/group.html
@@ -62,7 +62,8 @@
                 </tr>
                 <tr class="ignore-width"
                     ng-repeat-end ng-repeat-done>
-                    <td class="buckets" colspan="6">{{group.buckets}}</td>
+                    <td class="buckets" colspan="6"
+                        ng-bind-html="group.buckets"></td>
                 </tr>
             </table>
         </div>
diff --git a/web/gui/src/main/webapp/app/view/group/group.js b/web/gui/src/main/webapp/app/view/group/group.js
index f863609d..a0deece 100644
--- a/web/gui/src/main/webapp/app/view/group/group.js
+++ b/web/gui/src/main/webapp/app/view/group/group.js
@@ -48,6 +48,14 @@
                 query: params
             });
 
+            $scope.$watch('tableData', function () {
+                if (!fs.isEmptyObject($scope.tableData)) {
+                    $scope.tableData.forEach(function (group) {
+                        group.buckets = $sce.trustAsHtml(group.buckets);
+                    });
+                }
+            });
+
             $log.log('OvGroupCtrl has been created');
         }]);
 }());
diff --git a/web/gui/src/main/webapp/app/view/link/link.html b/web/gui/src/main/webapp/app/view/link/link.html
index ab20b63..e644593 100644
--- a/web/gui/src/main/webapp/app/view/link/link.html
+++ b/web/gui/src/main/webapp/app/view/link/link.html
@@ -57,7 +57,7 @@
                     <td>{{link.one}}</td>
                     <td>{{link.two}}</td>
                     <td>{{link.type}}</td>
-                    <td>{{link.direction}}</td>
+                    <td ng-bind-html="link.direction"></td>
                     <td>{{link.durable}}</td>
                 </tr>
             </table>
diff --git a/web/gui/src/main/webapp/app/view/link/link.js b/web/gui/src/main/webapp/app/view/link/link.js
index d21d7dc..fcf2a83 100644
--- a/web/gui/src/main/webapp/app/view/link/link.js
+++ b/web/gui/src/main/webapp/app/view/link/link.js
@@ -23,14 +23,22 @@
 
     angular.module('ovLink', [])
     .controller('OvLinkCtrl',
-        ['$log', '$scope', 'TableBuilderService',
+        ['$log', '$scope', '$sce', 'FnService', 'TableBuilderService',
 
-        function ($log, $scope, tbs) {
+        function ($log, $scope, $sce, fs, tbs) {
             tbs.buildTable({
                 scope: $scope,
                 tag: 'link'
             });
 
+            $scope.$watch('tableData', function () {
+                if (!fs.isEmptyObject($scope.tableData)) {
+                    $scope.tableData.forEach(function (link) {
+                        link.direction = $sce.trustAsHtml(link.direction);
+                    });
+                }
+            });
+
             $log.log('OvLinkCtrl has been created');
         }]);
 }());