Bug 270989 Context refactoring
Based on discussions over the past weeks, I'm doing a refactoring of the context API. Major changes: - Renamed IComputedValue to IContextFunction - Renamed *Value to *Function - Renamed UIContextScheduler to UISchedulerStrategy - Added concept of ILookupStrategy to delegate lookup of keys that are not yet defined in a given context - Re-implemented OSGi service support using lookup strategy I also fixed a couple of NPE's I found while testing with the e4 photo demo (null realms, etc)
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
if (parent != null) {
				parent.getChildren().add(part);
			}
		}
	}
	private EObject findObject(TreeIterator<EObject> it, String id) {
		while (it.hasNext()) {
			EObject el = it.next();
			if (el instanceof MApplicationElement) {
				if (el.eResource().getURIFragment(el).equals(id)) {
					return el;
				}
			}
		}
		return null;
	}
	private void init(MApplication<? extends MWindow> workbench2) {
		
		globalContext.set(MApplication.class.getName(), workbench);
		
		globalContext.get(ILegacyHook.class.getName());
	}
	public int run() {
		MWindow wbw = workbench.getWindows().get(0);
		createGUI(wbw);
		rv = 0;
		Platform.endSplash();