public interface MyService {
String sayHello(String name);
}
public class MyServiceImpl implements MyService {
@Override
public String sayHello(String name) {
return "Hello, " + name + "!";
}
}
public class Activator implements BundleActivator {
@Override
public void start(BundleContext context) throws Exception {
MyService service = new MyServiceImpl();
context.registerService(MyService.class.getName(), service, null);
}
@Override
public void stop(BundleContext context) throws Exception {
}
}
public class Client {
public void useService(BundleContext context) {
ServiceReference<MyService> ref = context.getServiceReference(MyService.class);
MyService service = context.getService(ref);
System.out.println(service.sayHello("John"));
context.ungetService(ref);
}
}