Implementing region hosts for topology 2

Change-Id: I6d1e45b1152b2387d4ff981dc0666868235eb1c3
diff --git a/core/api/src/main/java/org/onosproject/ui/model/topo/UiRegion.java b/core/api/src/main/java/org/onosproject/ui/model/topo/UiRegion.java
index 40dec55..7cd0da9 100644
--- a/core/api/src/main/java/org/onosproject/ui/model/topo/UiRegion.java
+++ b/core/api/src/main/java/org/onosproject/ui/model/topo/UiRegion.java
@@ -241,6 +241,17 @@
         return topology.deviceSet(deviceIds);
     }
 
+
+    /**
+     * Make sure we have only these hosts in the region.
+     *
+     * @param hosts hosts in the region
+     */
+    public void reconcileHosts(Set<HostId> hosts) {
+        hostIds.clear();
+        hostIds.addAll(hosts);
+    }
+
     /**
      * Returns the set of host identifiers for this region.
      *
@@ -260,6 +271,15 @@
     }
 
     /**
+     * Returns the count of devices in this region.
+     *
+     * @return the device count
+     */
+    public int hostCount() {
+        return hostIds.size();
+    }
+
+    /**
      * Returns the order in which layers should be rendered. Lower layers
      * come earlier in the list. For example, to indicate that nodes in the
      * optical layer should be rendered "below" nodes in the packet layer,