blob: e040643ee07f647cc179e892145a3f61c0b8a0ba [file] [log] [blame]
tomb1260e42014-08-26 18:39:57 -07001package org.onlab.onos.net.trivial.impl;
tom0eb04ca2014-08-25 14:34:51 -07002
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.net.GreetService;
9import org.slf4j.Logger;
10import org.slf4j.LoggerFactory;
11
12/**
13 * Example of a component that does not provide any service, but consumes one.
14 */
15@Component(immediate = true)
16public class SomeOtherComponent {
17
18 private final Logger log = LoggerFactory.getLogger(SomeOtherComponent.class);
19
20 @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
21 protected GreetService service;
22 // protected to allow injection for testing;
23 // alternative is to write bindSeedService and unbindSeedService, which is more code
24
25 @Activate
26 public void activate() {
27 log.info("SomeOtherComponent started");
28 service.yo("neighbour");
29 }
30
31 @Deactivate
32 public void deactivate() {
33 log.info("SomeOtherComponent stopped");
34 }
35
36}