Revert "Fixing Hosts filtered by RegionId... for topo-2 view."
This reverts commit 4aef6c371a5fd25171ef9ea8faf193d662c5544c.
Change-Id: Ib2959eb73686af2788525710e33f8fc8db78b819
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 7e9a1a9b..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<>();
@@ -90,7 +92,7 @@
protected void activate() {
Serializer serializer =
Serializer.using(Arrays.asList(KryoNamespaces.API),
- Identifier.class);
+ Identifier.class);
regionsRepo = storageService.<RegionId, Region>consistentMapBuilder()
.withSerializer(serializer)
@@ -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) -> {
@@ -165,9 +173,8 @@
@Override
public void addDevices(RegionId regionId, Collection<DeviceId> deviceIds) {
- // Devices can only be a member in one region.
- // Remove the device if it belongs to a different region than
- // the region for which we are attempting to add it.
+ // Devices can only be a member in one region. Remove the device if it belongs to
+ // a different region than the region for which we are attempting to add it.
for (DeviceId deviceId : deviceIds) {
Region region = getRegionForDevice(deviceId);
if ((region != null) && (!regionId.id().equals(region.id().id()))) {
@@ -201,7 +208,7 @@
} else {
return ImmutableSet.<DeviceId>builder()
.addAll(Sets.difference(existingDevices,
- ImmutableSet.copyOf(deviceIds)))
+ ImmutableSet.copyOf(deviceIds)))
.build();
}
});
@@ -212,8 +219,7 @@
/**
* Listener class to map listener events to the region inventory events.
*/
- private class InternalRegionListener
- implements MapEventListener<RegionId, Region> {
+ private class InternalRegionListener implements MapEventListener<RegionId, Region> {
@Override
public void event(MapEvent<RegionId, Region> event) {
Region region = null;
@@ -241,14 +247,13 @@
/**
* Listener class to map listener events to the region membership events.
*/
- private class InternalMembershipListener
- implements MapEventListener<RegionId, Set<DeviceId>> {
+ private class InternalMembershipListener implements MapEventListener<RegionId, Set<DeviceId>> {
@Override
public void event(MapEvent<RegionId, Set<DeviceId>> event) {
if (event.type() != MapEvent.Type.REMOVE) {
notifyDelegate(new RegionEvent(REGION_MEMBERSHIP_CHANGED,
- regionsById.get(event.key()),
- event.newValue().value()));
+ regionsById.get(event.key()),
+ event.newValue().value()));
}
}
}