Bug 18486 Need documentation for startup extension point.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/browsing/JavaBrowsingContentProvider.java
IWorkingCopy wc= EditorUtility.getWorkingCopy((ICompilationUnit)parent);
				if (wc != null) {
					parent= (IParent)wc;
					IMember wcType= EditorUtility.getWorkingCopy(type);
					if (wcType != null)
						type= (IType)wcType;
				}
			}
		}
		if (type.getDeclaringType() != null)
			return type.getChildren();
		
		IJavaElement[] members= parent.getChildren();		
		ArrayList tempResult= new ArrayList(members.length);
		for (int i= 0; i < members.length; i++)
			if ((members[i] instanceof IImportContainer))
				tempResult.add(members[i]);
		tempResult.addAll(Arrays.asList(type.getChildren()));
		return tempResult.toArray();
	}
	private Object[] getPackageFragmentRoots(IJavaProject project) throws JavaModelException {
		if (!project.getProject().isOpen())
			return NO_CHILDREN;
			
		IPackageFragmentRoot[] roots= project.getPackageFragmentRoots();
		List list= new ArrayList(roots.length);
		
		
		for (int i= 0; i < roots.length; i++) {
			IPackageFragmentRoot root= (IPackageFragmentRoot)roots[i];