blob: b9251dd5c80d23fdb00212a11bdd5e3f24362efb [file] [log] [blame]
tom0755a362014-09-24 11:54:43 -07001package org.onlab.onos.foo;
2
3import org.apache.felix.scr.annotations.Activate;
4import org.apache.felix.scr.annotations.Component;
5import org.apache.felix.scr.annotations.Deactivate;
6import org.apache.felix.scr.annotations.Reference;
7import org.apache.felix.scr.annotations.ReferenceCardinality;
8import org.onlab.onos.cluster.ClusterEvent;
9import org.onlab.onos.cluster.ClusterEventListener;
10import org.onlab.onos.cluster.ClusterService;
11import org.slf4j.Logger;
12
13import static org.slf4j.LoggerFactory.getLogger;
14
15/**
16 * Playground app component.
17 */
18@Component(immediate = true)
19public class FooComponent {
20
21 private final Logger log = getLogger(getClass());
22
23 @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
24 protected ClusterService clusterService;
25
26 private ClusterEventListener clusterListener = new InnerClusterListener();
27
28 @Activate
29 public void activate() {
30 clusterService.addListener(clusterListener);
31 log.info("Started");
32 }
33
34 @Deactivate
35 public void deactivate() {
36 clusterService.removeListener(clusterListener);
37 log.info("Stopped");
38 }
39
40 private class InnerClusterListener implements ClusterEventListener {
41 @Override
42 public void event(ClusterEvent event) {
43 log.info("WOOOOT! {}", event);
44 }
45 }
46}
47
48