Bug 304239 move each core application service to its own package
In M4, some services have their own package, others are provided in core.services. Boris and I talked about moving each service (API) to its own package. Reasons are: - aids with discoverability - helps separate application services from other public API in the core.services package (such as IDisposable, JSONObject) - helps to emphasize that services can be setup and consumed individually - will make it easier to move to separate bundles if that is ever needed This means moving Adapter, Logger, IStatusHandler to their own packages.
bundles/org.eclipse.e4.ui.css.swt/src/org/eclipse/e4/ui/css/swt/properties/custom/CSSPropertyTabRendererSWTHandler.java
protected void applyCSSProperty(Control control, String property,
			CSSValue value, String pseudo, CSSEngine engine) throws Exception {
		if (!(control instanceof CTabFolder)) return;
		if (value.getCssValueType() == CSSValue.CSS_PRIMITIVE_VALUE) {
			if (((CSSPrimitiveValue) value).getPrimitiveType() == CSSPrimitiveValue.CSS_URI) {
				String rendURL = ((CSSPrimitiveValue) value).getStringValue();
			
				Object appContext = control.getDisplay().getData("org.eclipse.e4.ui.css.context");
				if (appContext != null && appContext instanceof IEclipseContext) {
					IEclipseContext context = (IEclipseContext) appContext;
					IEclipseContext childContext = EclipseContextFactory.create(context, null);
					childContext.set(CTabFolder.class.getName(), control);
					IContributionFactory factory = (IContributionFactory) context.get(IContributionFactory.class.getName());
					Object rend = factory.create(rendURL, childContext);
					if (rend != null && rend instanceof CTabFolderRenderer){
						((CTabFolder) control).setRenderer((CTabFolderRenderer)rend);
					}
				}
			} else {
				((CTabFolder) control).setRenderer(null);
			}
		}
	}
	
	protected String retrieveCSSProperty(Control control, String property,
			String pseudo, CSSEngine engine) throws Exception {
		return null;
	}
}