public interface MyEvent { String getMessage(); } public class MyEventImpl implements MyEvent { private String message; public MyEventImpl(String message) { this.message = message; } @Override public String getMessage() { return message; } } @Component(service = EventListener.class) public class MyEventListener implements EventListener { @Override public void handleEvent(Event event) { if (event instanceof MyEvent) { MyEvent myEvent = (MyEvent) event; System.out.println("Received event: " + myEvent.getMessage()); } } } @Reference private EventAdmin eventAdmin; public void publishEvent(String message) { MyEvent myEvent = new MyEventImpl(message); eventAdmin.postEvent(myEvent); } Bundle-Name: MyEventBundle Bundle-SymbolicName: com.example.myeventbundle Bundle-Version: 1.0.0 Import-Package: org.osgi.framework, org.osgi.service.event, org.osgi.service.component.annotations Export-Package: com.example.myeventbundle


上一篇:
下一篇:
切换中文