注册服务:
BundleContext bundleContext = FrameworkUtil.getBundle(当前类.class).getBundleContext();
EventHandler eventCreateNewConfigEventHandler = new EventHandler() {
@Override
public void handleEvent(final org.osgi.service.event.Event event) {
doSomething()...
}
};
Dictionary<String, String> properties = new Hashtable<String, String>();
properties.put(EventConstants.EVENT_TOPIC, "licensecheck/result");//$NON-NLS-1$
registerCheckPermissionService = bundleContext.registerService(EventHandler.class, eventCreateNewConfigEventHandler, properties);
发通知:
BundleContext bundleContext = FrameworkUtil.getBundle(this.getClass()).getBundleContext();
ServiceReference<EventAdmin> serviceRef = bundleContext.getServiceReference(EventAdmin.class);
EventAdmin eventAdmin = bundleContext.getService(serviceRef);
final Map<String, String> properties = new HashMap<String, String>();
org.osgi.service.event.Event event = new org.osgi.service.event.Event("licensecheck/check", roperties);
eventAdmin.sendEvent(event);