List of usage examples for org.eclipse.jdt.internal.core JavaElementInfo getChildren
public IJavaElement[] getChildren()
From source file:com.codenvy.ide.ext.java.server.internal.core.ClassFile.java
License:Open Source License
public boolean existsUsingJarTypeCache() { if (getPackageFragmentRoot().isArchive()) { // JavaModelManager manager = JavaModelManager.getJavaModelManager(); IType type = getType();//from ww w.j a v a2s . c o m Object info = manager.getInfo(type); if (info == JavaModelCache.NON_EXISTING_JAR_TYPE_INFO) return false; else if (info != null) return true; // info is null JavaElementInfo parentInfo = (JavaElementInfo) manager.getInfo(getParent()); if (parentInfo != null) { // if parent is open, this class file must be in its children IJavaElement[] children = parentInfo.getChildren(); for (int i = 0, length = children.length; i < length; i++) { if (this.name.equals(((ClassFile) children[i]).name)) return true; } return false; } try { info = getJarBinaryTypeInfo((PackageFragment) getParent(), true/*fully initialize so as to not keep a reference to the byte array*/); } catch (CoreException e) { // leave info null } catch (IOException e) { // leave info null } catch (ClassFormatException e) { // leave info null } manager.putJarTypeInfo(type, info == null ? JavaModelCache.NON_EXISTING_JAR_TYPE_INFO : info); return info != null; } else return exists(); // throw new UnsupportedOperationException(); }
From source file:org.hibernate.eclipse.jdt.ui.internal.jpa.collect.CompilationUnitCollector.java
License:Open Source License
/** * Process object - java element to collect all it's children CompilationUnits * @param obj/*from w w w. jav a2 s .c om*/ * @param bCollect */ public void processJavaElements(Object obj, boolean bCollect) { if (obj instanceof ICompilationUnit) { ICompilationUnit cu = (ICompilationUnit) obj; addCompilationUnit(cu, bCollect); } else if (obj instanceof File) { File file = (File) obj; if (file.getProject() != null) { IJavaProject javaProject = JavaCore.create(file.getProject()); ICompilationUnit[] cus = Utils.findCompilationUnits(javaProject, file.getFullPath()); if (cus != null) { for (int i = 0; i < cus.length; i++) { addCompilationUnit(cus[i], bCollect); } } } } else if (obj instanceof JavaProject) { JavaProject javaProject = (JavaProject) obj; IPackageFragmentRoot[] pfr = null; try { pfr = javaProject.getAllPackageFragmentRoots(); } catch (JavaModelException e) { // just ignore it! //HibernateConsolePlugin.getDefault().logErrorMessage("JavaModelException: ", e); //$NON-NLS-1$ } if (pfr != null) { for (int i = 0; i < pfr.length; i++) { processJavaElements(pfr[i], bCollect); } } } else if (obj instanceof PackageFragment) { PackageFragment packageFragment = (PackageFragment) obj; ICompilationUnit[] cus = null; try { cus = packageFragment.getCompilationUnits(); } catch (JavaModelException e) { // just ignore it! //HibernateConsolePlugin.getDefault().logErrorMessage("JavaModelException: ", e); //$NON-NLS-1$ } if (cus != null && cus.length > 0) { if (bCollect) { selection2UpdateList.add(obj); bCollect = false; } for (int i = 0; i < cus.length; i++) { addCompilationUnit(cus[i], bCollect); } } } else if (obj instanceof PackageFragmentRoot) { JavaElement javaElement = (JavaElement) obj; JavaElementInfo javaElementInfo = null; try { javaElementInfo = (JavaElementInfo) javaElement.getElementInfo(); } catch (JavaModelException e) { // just ignore it! //HibernateConsolePlugin.getDefault().logErrorMessage("JavaModelException: ", e); //$NON-NLS-1$ } if (javaElementInfo != null) { IJavaElement[] je = javaElementInfo.getChildren(); for (int i = 0; i < je.length; i++) { processJavaElements(je[i], true); } } } else if (obj instanceof JavaElement) { JavaElement javaElement = (JavaElement) obj; ICompilationUnit cu = javaElement.getCompilationUnit(); addCompilationUnit(cu, bCollect); } else if (obj instanceof SourceType) { if (bCollect) { selection2UpdateList.add(obj); bCollect = false; } SourceType sourceType = (SourceType) obj; processJavaElements(sourceType.getJavaModel(), bCollect); } else { // ignore //System.out.println("1 Blah! " + selection); //$NON-NLS-1$ } }
From source file:org.hibernate.eclipse.jdt.ui.wizards.NewHibernateMappingFileWizard.java
License:Open Source License
protected void processJavaElements(Object obj, int depth) { if (depth < 0) { return;/* w ww .j a va2s . c o m*/ } try { if (obj instanceof ICompilationUnit) { ICompilationUnit cu = (ICompilationUnit) obj; selectionCU.add(cu); } else if (obj instanceof JavaProject && depth > 0) { JavaProject javaProject = (JavaProject) obj; IPackageFragmentRoot[] pfr = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot element : pfr) { processJavaElements(element, depth - 1); } } else if (obj instanceof PackageFragment) { PackageFragment packageFragment = (PackageFragment) obj; ICompilationUnit[] cus = packageFragment.getCompilationUnits(); for (ICompilationUnit cu : cus) { selectionCU.add(cu); } } else if (obj instanceof PackageFragmentRoot && depth > 0) { JavaElement javaElement = (JavaElement) obj; JavaElementInfo javaElementInfo = (JavaElementInfo) javaElement.getElementInfo(); IJavaElement[] je = javaElementInfo.getChildren(); for (IJavaElement element : je) { processJavaElements(element, depth - 1); } } else if (obj instanceof JavaElement) { JavaElement javaElement = (JavaElement) obj; ICompilationUnit cu = javaElement.getCompilationUnit(); selectionCU.add(cu); } } catch (JavaModelException e) { // just ignore it! //HibernateConsolePlugin.getDefault().logErrorMessage("JavaModelException: ", e); //$NON-NLS-1$ } }