Project: Eclipse_Platform_UI
Bug 270989 Context refactoring
Reported: 2009-04-02 11:47:44 | Status: resolved fixed

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)

Files changed in fix:
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/workbench/ui/renderers/swt/ContributedPartFactory.java bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/workbench/ui/renderers/swt/StackModelFactory.java bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/workbench/ui/renderers/swt/WBPartFactory.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/BackgroundRunnerFunction.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/BackgroundRunnerValue.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/ProgressMonitorFunction.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/ProgressMonitorValue.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/ActiveChildOutputFunction.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/ActiveChildOutputValue.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/ReflectionContributionFactory.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/UIContextScheduler.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/UISchedulerStrategy.java bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java examples/org.eclipse.e4.demo.e4photo/src/org/eclipse/e4/demo/e4photo/Library.java examples/org.eclipse.e4.demo.e4photo/src/org/eclipse/e4/demo/e4photo/RealmFunction.java examples/org.eclipse.e4.demo.e4photo/src/org/eclipse/e4/demo/e4photo/RealmValue.java examples/org.eclipse.e4.demo.e4photo/src/org/eclipse/e4/demo/e4photo/WorkspaceValue.java