blob: 6f34d326fd6e0be78faac316af9038da7e4dab71 [file] [log] [blame]
Yuta HIGUCHI3e5d11a2014-11-04 14:16:44 -08001package org.onlab.onos.store.cluster;
2
3import java.util.HashMap;
4import java.util.Map;
5import java.util.Set;
6
7import org.onlab.onos.cluster.ClusterEventListener;
8import org.onlab.onos.cluster.ClusterService;
9import org.onlab.onos.cluster.ControllerNode;
10import org.onlab.onos.cluster.NodeId;
11import org.onlab.onos.cluster.ControllerNode.State;
12
13import com.google.common.collect.Sets;
14
15public abstract class StaticClusterService implements ClusterService {
16
17 protected final Map<NodeId, ControllerNode> nodes = new HashMap<>();
18 protected final Map<NodeId, ControllerNode.State> nodeStates = new HashMap<>();
19 protected ControllerNode localNode;
20
21 @Override
22 public ControllerNode getLocalNode() {
23 return localNode;
24 }
25
26 @Override
27 public Set<ControllerNode> getNodes() {
28 return Sets.newHashSet(nodes.values());
29 }
30
31 @Override
32 public ControllerNode getNode(NodeId nodeId) {
33 return nodes.get(nodeId);
34 }
35
36 @Override
37 public State getState(NodeId nodeId) {
38 return nodeStates.get(nodeId);
39 }
40
41 @Override
42 public void addListener(ClusterEventListener listener) {
43 }
44
45 @Override
46 public void removeListener(ClusterEventListener listener) {
47 }
48}