Bug 282717 Move IServiceConstants.OUTPUTS to IContextConstants
The "outputs" value is used by the low level injection code, so this constant should live lower down. Currently we are just hard-coding this value in bundles below the UI level.
bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/workbench/ui/renderers/swt/ContributedPartFactory.java
if (part instanceof MContributedPart<?>) {
			final Composite newComposite = new Composite(
					(Composite) parentWidget, SWT.NONE);
			newWidget = newComposite;
			bindWidget(part, newWidget);
			final MContributedPart<?> contributedPart = (MContributedPart<?>) part;
			final IEclipseContext localContext = part.getContext();
			final IEclipseContext outputContext = EclipseContextFactory.create(
					null, UISchedulerStrategy.getInstance());
			outputContext.set(IContextConstants.DEBUG_STRING,
					"PartOutputContext(" + contributedPart.getName() + ')'); 
			localContext.set(Composite.class.getName(), newComposite);
			localContext.set(IServiceConstants.OUTPUTS, outputContext);
			localContext.set(IEclipseContext.class.getName(), outputContext);
			localContext.set(IServiceConstants.PERSISTED_STATE, contributedPart
					.getPersistedState());
			outputContext.runAndTrack(new Runnable() {
				public void run() {
					Object state = outputContext
							.get(IServiceConstants.PERSISTED_STATE);
					if (state != null) {
						contributedPart.setPersistedState((String) state);
					}
				}
			});
			parentContext.set(IServiceConstants.ACTIVE_CHILD, localContext);
			Object newPart = contributionFactory.create(contributedPart
					.getURI(), localContext);
			contributedPart.setObject(newPart);
			newWidget.addDisposeListener(new DisposeListener() {