Implementing region hosts for topology 2
Change-Id: I6d1e45b1152b2387d4ff981dc0666868235eb1c3
diff --git a/core/store/dist/src/main/java/org/onosproject/store/region/impl/DistributedRegionStore.java b/core/store/dist/src/main/java/org/onosproject/store/region/impl/DistributedRegionStore.java
index 6d70376..e101514 100644
--- a/core/store/dist/src/main/java/org/onosproject/store/region/impl/DistributedRegionStore.java
+++ b/core/store/dist/src/main/java/org/onosproject/store/region/impl/DistributedRegionStore.java
@@ -27,6 +27,7 @@
import org.onlab.util.Identifier;
import org.onosproject.cluster.NodeId;
import org.onosproject.net.DeviceId;
+import org.onosproject.net.HostId;
import org.onosproject.net.region.DefaultRegion;
import org.onosproject.net.region.Region;
import org.onosproject.net.region.RegionEvent;
@@ -78,6 +79,7 @@
private ConsistentMap<RegionId, Set<DeviceId>> membershipRepo;
private Map<RegionId, Set<DeviceId>> regionDevices;
+ private Map<RegionId, Set<HostId>> regionHosts;
private Map<DeviceId, Region> regionsByDevice = new HashMap<>();
@@ -140,6 +142,12 @@
}
@Override
+ public Set<HostId> getRegionHosts(RegionId regionId) {
+ Set<HostId> hostIds = regionHosts.get(regionId);
+ return hostIds != null ? ImmutableSet.copyOf(hostIds) : ImmutableSet.of();
+ }
+
+ @Override
public Region createRegion(RegionId regionId, String name, Region.Type type,
List<Set<NodeId>> masterNodeIds) {
return regionsRepo.compute(regionId, (id, region) -> {