Bug 263544 [context] Add dependency injection context -> user object
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
for (int i = 0; i < constructors.length; i++) {
				Constructor<?> constructor = constructors[i];
				
				if ((constructor.getModifiers() & Modifier.PUBLIC) != 0) {
					toSort.add(constructor);
				}
			}
			
			
			Collections.sort(toSort, new Comparator<Constructor<?>>() {
				public int compare(Constructor<?> c1, Constructor<?> c2) {
					int l1 = c1.getParameterTypes().length;
					int l2 = c2.getParameterTypes().length;
					return l1 - l2;
				}
			});
			
			for (Constructor<?> next : toSort) {
				boolean satisfiable = true;
				Class<?>[] params = next.getParameterTypes();
				for (int i = 0; i < params.length && satisfiable; i++) {
					Class<?> clazz = params[i];
					if (!context.isSet(clazz.getName())) {
						satisfiable = false;
					}
				}
				if (satisfiable) {
					targetConstructor = next;
				}
			}