Bug 299172 e4.ui.services dependency on org.eclipse.core.runtime
The bundle org.eclipse.e4.ui.services uses the core.runtime bundle and the Platform class. This is a global singleton so it should be avoided.
bundles/org.eclipse.e4.ui.services/src/org/eclipse/e4/ui/services/internal/events/EventBroker.java
return false;
		}
		eventAdmin.postEvent(event);
		return true;
	}
	private Event constructEvent(String topic, Object data) {
		Event event;
		if (data instanceof Dictionary<?,?>) {
			event = new Event(topic, (Dictionary<?,?>)data);
		} else if (data instanceof Map<?,?>) {
			event = new Event(topic, (Map<?,?>)data);
		} else {
			Dictionary<String, Object> d = new Hashtable<String, Object>(2);
			d.put(EventConstants.EVENT_TOPIC, topic);
			if (data != null)
				d.put(IEventBroker.DATA, data);
			event = new Event(topic, d);
		}
		return event;
	}
	public boolean subscribe(String topic, EventHandler eventHandler) {
		return subscribe(topic, null, eventHandler, false);
	}
	
	public boolean subscribe(String topic, String filter, EventHandler eventHandler, boolean headless) {
		BundleContext bundleContext = Activator.getDefault().getBundleContext();
		if (bundleContext == null) {
			Activator.getDefault().logError(NLS.bind(ServiceMessages.NO_BUNDLE_CONTEXT, topic));
			return false;
		}