ONOS-4326: Focusing on add/remove cluster member. (WIP).
If reviewing this, please refer to http://tinyurl.com/onos-ui-topo-model
Change-Id: Ic6568074ac768ec828f9103e92caab5e9a06ade6
diff --git a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
index 0a4ce99..48ae42f 100644
--- a/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
+++ b/web/gui/src/main/java/org/onosproject/ui/impl/topo/model/UiSharedTopologyModel.java
@@ -59,6 +59,7 @@
import org.onosproject.net.statistic.StatisticService;
import org.onosproject.net.topology.TopologyService;
import org.onosproject.ui.impl.topo.UiTopoSession;
+import org.onosproject.ui.model.ServiceBundle;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -122,7 +123,7 @@
@Activate
protected void activate() {
- cache = new ModelCache(eventDispatcher);
+ cache = new ModelCache(new DefaultServiceBundle(), eventDispatcher);
eventDispatcher.addSink(UiModelEvent.class, listenerRegistry);
@@ -180,6 +181,52 @@
removeListener(session);
}
+ /**
+ * Default implementation of service bundle to return references to our
+ * dynamically injected services.
+ */
+ private class DefaultServiceBundle implements ServiceBundle {
+ @Override
+ public ClusterService cluster() {
+ return clusterService;
+ }
+
+ @Override
+ public MastershipService mastership() {
+ return mastershipService;
+ }
+
+ @Override
+ public RegionService region() {
+ return regionService;
+ }
+
+ @Override
+ public DeviceService device() {
+ return deviceService;
+ }
+
+ @Override
+ public LinkService link() {
+ return linkService;
+ }
+
+ @Override
+ public HostService host() {
+ return hostService;
+ }
+
+ @Override
+ public IntentService intent() {
+ return intentService;
+ }
+
+ @Override
+ public FlowRuleService flow() {
+ return flowService;
+ }
+ }
+
private class InternalClusterListener implements ClusterEventListener {
@Override