public interface MyEvent { void handleEvent(String message); } public class EventPublisher { private EventAdmin eventAdmin; public void publishEvent(String message) { Dictionary<String, Object> properties = new Hashtable<>(); properties.put("message", message); eventAdmin.sendEvent(new Event("my/event", properties)); } } @Component public class EventListener implements MyEvent { @Override public void handleEvent(String message) { System.out.println("Received event: " + message); } } @Component public class Activator { private EventAdmin eventAdmin; @Reference public void setEventAdmin(EventAdmin eventAdmin) { this.eventAdmin = eventAdmin; Dictionary<String, Object> properties = new Hashtable<>(); properties.put(EventConstants.EVENT_TOPIC, "my/event"); eventAdmin.subscribe(this, "(message=*)", properties); } @Activate public void start(BundleContext context) { } }


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