Bug 126658 [CommonNavigator] [DND] Complete definition of DND API
tests/org.eclipse.ui.tests.navigator/src/org/eclipse/ui/tests/navigator/extension/TestContentProvider.java
TestExtensionTreeData data = (TestExtensionTreeData) parentElement;
			return data.getChildren();
		} else {
			IProject project = adaptToProject(parentElement);  
			if (project != null && project.isAccessible()) {
				IFile modelFile = project.getFile(MODEL_FILE_PATH);
				if (rootElements.containsKey(modelFile)) {
					TestExtensionTreeData model = (TestExtensionTreeData) rootElements
							.get(modelFile);
					return model != null ? model.getChildren() : NO_CHILDREN;
				} else {
					TestExtensionTreeData model = updateModel(modelFile);
					return model != null ? model.getChildren() : NO_CHILDREN;
				}
			}
		}  
		return NO_CHILDREN;
	}
	/**
	 * @param parentElement
	 * @param class1
	 * @return
	 */
	private IProject adaptToProject(Object parentElement) {
		if(parentElement instanceof IProject)
			return (IProject) parentElement;
		else if(parentElement instanceof IAdaptable)
			return (IProject) ((IAdaptable) parentElement).getAdapter(IProject.class);
		else 
			return (IProject) Platform.getAdapterManager().getAdapter(parentElement, IProject.class);