List of usage examples for org.eclipse.jdt.core IJavaElement getParent
IJavaElement getParent();
null
if this element has no parent. From source file:com.codenvy.ide.ext.java.server.internal.core.BinaryType.java
License:Open Source License
public IPackageFragment getPackageFragment() { IJavaElement parentElement = this.parent; while (parentElement != null) { if (parentElement.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { return (IPackageFragment) parentElement; } else {/*from ww w. j a v a2s. co m*/ parentElement = parentElement.getParent(); } } Assert.isTrue(false); // should not happen return null; }
From source file:com.codenvy.ide.ext.java.server.internal.core.ClassFile.java
License:Open Source License
/** * @see org.eclipse.jdt.core.IClassFile/*from w w w . j a v a 2s . c o m*/ */ public IJavaElement getElementAt(int position) throws JavaModelException { IJavaElement parentElement = getParent(); while (parentElement.getElementType() != IJavaElement.PACKAGE_FRAGMENT_ROOT) { parentElement = parentElement.getParent(); } PackageFragmentRoot root = (PackageFragmentRoot) parentElement; SourceMapper mapper = root.getSourceMapper(); if (mapper == null) { return null; } else { // ensure this class file's buffer is open so that source ranges are computed getBuffer(); IType type = getType(); return findElement(type, position, mapper); } }
From source file:com.codenvy.ide.ext.java.server.internal.core.CompilationUnit.java
License:Open Source License
/** * @see org.eclipse.jdt.core.ICompilationUnit#findElements(org.eclipse.jdt.core.IJavaElement) *//* w w w. j av a2s. c o m*/ public IJavaElement[] findElements(IJavaElement element) { ArrayList children = new ArrayList(); while (element != null && element.getElementType() != IJavaElement.COMPILATION_UNIT) { children.add(element); element = element.getParent(); } if (element == null) return null; IJavaElement currentElement = this; for (int i = children.size() - 1; i >= 0; i--) { SourceRefElement child = (SourceRefElement) children.get(i); switch (child.getElementType()) { case IJavaElement.PACKAGE_DECLARATION: currentElement = ((ICompilationUnit) currentElement).getPackageDeclaration(child.getElementName()); break; case IJavaElement.IMPORT_CONTAINER: currentElement = ((ICompilationUnit) currentElement).getImportContainer(); break; case IJavaElement.IMPORT_DECLARATION: currentElement = ((IImportContainer) currentElement).getImport(child.getElementName()); break; case IJavaElement.TYPE: switch (currentElement.getElementType()) { case IJavaElement.COMPILATION_UNIT: currentElement = ((ICompilationUnit) currentElement).getType(child.getElementName()); break; case IJavaElement.TYPE: currentElement = ((IType) currentElement).getType(child.getElementName()); break; case IJavaElement.FIELD: case IJavaElement.INITIALIZER: case IJavaElement.METHOD: currentElement = ((IMember) currentElement).getType(child.getElementName(), child.occurrenceCount); break; } break; case IJavaElement.INITIALIZER: currentElement = ((IType) currentElement).getInitializer(child.occurrenceCount); break; case IJavaElement.FIELD: currentElement = ((IType) currentElement).getField(child.getElementName()); break; case IJavaElement.METHOD: currentElement = ((IType) currentElement).getMethod(child.getElementName(), ((IMethod) child).getParameterTypes()); break; } } if (currentElement != null && currentElement.exists()) { return new IJavaElement[] { currentElement }; } else { return null; } }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElement.java
License:Open Source License
/** * @see org.eclipse.jdt.core.IJavaElement *//*from w ww . java2s .c om*/ public IJavaElement getAncestor(int ancestorType) { IJavaElement element = this; while (element != null) { if (element.getElementType() == ancestorType) return element; element = element.getParent(); } return null; }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElement.java
License:Open Source License
/** * @see org.eclipse.jdt.core.IJavaElement *///from w w w .j a v a 2 s . c o m public IJavaModel getJavaModel() { IJavaElement current = this; do { if (current instanceof IJavaModel) return (IJavaModel) current; } while ((current = current.getParent()) != null); return null; }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElement.java
License:Open Source License
/** * @see org.eclipse.jdt.core.IJavaElement *//*w w w . j av a 2 s .c o m*/ public IJavaProject getJavaProject() { IJavaElement current = this; do { if (current instanceof IJavaProject) return (IJavaProject) current; } while ((current = current.getParent()) != null); return null; }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElement.java
License:Open Source License
/** * Returns true if this element is an ancestor of the given element, * otherwise false.//from ww w . j av a 2 s . c om */ public boolean isAncestorOf(IJavaElement e) { IJavaElement parentElement = e.getParent(); while (parentElement != null && !parentElement.equals(this)) { parentElement = parentElement.getParent(); } return parentElement != null; }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElementDelta.java
License:Open Source License
/** * Returns whether the two java elements are equals and have the same parent. *//*w w w .ja v a 2 s. co m*/ protected boolean equalsAndSameParent(IJavaElement e1, IJavaElement e2) { IJavaElement parent1; return e1.equals(e2) && ((parent1 = e1.getParent()) != null) && parent1.equals(e2.getParent()); }
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaElementDelta.java
License:Open Source License
/** * Returns a collection of all the parents of this element up to (but * not including) the root of this tree in bottom-up order. If the given * element is not a descendant of the root of this tree, <code>null</code> * is returned.//from ww w . j av a 2 s . c o m */ private ArrayList getAncestors(IJavaElement element) { IJavaElement parent = element.getParent(); if (parent == null) { return null; } ArrayList parents = new ArrayList(); while (!parent.equals(this.changedElement)) { parents.add(parent); parent = parent.getParent(); if (parent == null) { return null; } } parents.trimToSize(); return parents; }
From source file:com.codenvy.ide.ext.java.server.internal.core.LocalVariable.java
License:Open Source License
/** * @see org.eclipse.jdt.core.IMember#getClassFile() */// www .j av a 2 s. co m public IClassFile getClassFile() { IJavaElement element = getParent(); while (element instanceof IMember) { element = element.getParent(); } if (element instanceof IClassFile) { return (IClassFile) element; } return null; }