blob: 6cb0bfeec59f71d0b8ed401b3821a40fd0f2b763 [file] [log] [blame]
package org.onlab.onos.impl;
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Deactivate;
import org.apache.felix.scr.annotations.Reference;
import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.onlab.onos.GreetService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Example of a component that does not provide any service, but consumes one.
*/
@Component(immediate = true)
public class SomeOtherComponent {
private final Logger log = LoggerFactory.getLogger(SomeOtherComponent.class);
@Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
protected GreetService service;
// protected to allow injection for testing;
// alternative is to write bindSeedService and unbindSeedService, which is more code
@Activate
public void activate() {
log.info("SomeOtherComponent started");
service.yo("neighbour");
}
@Deactivate
public void deactivate() {
log.info("SomeOtherComponent stopped");
}
}