Bug 261852 [context] Separate code into API / SPI / internal
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
|| clsSpec.indexOf("PartSash") >= 0) {
					IConfigurationElement tmp = factories[offset];
					factories[offset++] = factories[i];
					factories[i] = tmp;
				}
			}
			for (int i = 0; i < factories.length; i++) {
				PartFactory factory = null;
				try {
					factory = (PartFactory) factories[i]
							.createExecutableExtension("class");
				} catch (CoreException e) {
					e.printStackTrace();
				}
				if (factory != null) {
					factory.init(renderer, globalContext,
							(IContributionFactory) this);
					renderer.addPartFactory(factory);
					
					if (factory instanceof ContributedPartFactory) {
						ContributedPartFactory cpf = (ContributedPartFactory) factory;
						cpf
								.setContributionFactory(((IContributionFactory) this));
					}
				}
			}
		}
		renderer.createGui(workbenchWindow);
		appWindow = (Shell) workbenchWindow.getWidget();
	}