List of usage examples for org.eclipse.jdt.core IJavaElement COMPILATION_UNIT
int COMPILATION_UNIT
To view the source code for org.eclipse.jdt.core IJavaElement COMPILATION_UNIT.
Click Source Link
From source file:org.eclipse.jpt.jpa.core.jpql.DefaultContentAssistExtension.java
License:Open Source License
/** * {@inheritDoc}//w ww . j a v a 2 s.c o m */ public Iterable<String> classNames(String prefix, ClassType classType) { IJavaProject javaProject = jpaProject.getJavaProject(); Set<String> classNames = new HashSet<String>(); boolean emptyPrefix = (prefix.length() == 0); int index = !emptyPrefix ? prefix.lastIndexOf('.') : -1; boolean hasDot = (index > -1); // Note: In order to increase performance by preventing array creation and filtering, // IParent.getChildren() is used, then a simple check is performed on the element type try { // Traverse the packages for (IPackageFragment packageFragment : javaProject.getPackageFragments()) { String packageName = packageFragment.getElementName(); // Filter the package out if the prefix has a dot, // match the beginning of the prefix up to the last dot boolean packageAccepted = !hasDot || packageName.regionMatches(true, 0, prefix, 0, index); if (packageAccepted) { // Traverse the classes within the package for (IJavaElement javaElement : packageFragment.getChildren()) { switch (javaElement.getElementType()) { // Java source files case IJavaElement.COMPILATION_UNIT: { ICompilationUnit compilationUnit = (ICompilationUnit) javaElement; for (IJavaElement cuChild : compilationUnit.getChildren()) { // Class definition if (cuChild.getElementType() == IJavaElement.TYPE) { IType type = (IType) cuChild; String className = type.getFullyQualifiedName(); // Filter out the class if required // NOTE: An empty prefix will not filter anonymous or member classes, // to do so, we need to use what the Java content assist uses // otherwise it takes too long to calculate the valid classes if (emptyPrefix || acceptClass(type, className, classType, prefix, hasDot)) { classNames.add(className); } } } break; } // Java class files case IJavaElement.CLASS_FILE: { IClassFile classFile = (IClassFile) javaElement; IType type = classFile.getType(); String className = type.getFullyQualifiedName(); // Filter out the class if required // NOTE: An empty prefix will not filter anonymous or member classes, // to do so, we need to use what the Java content assist uses // otherwise it takes too long to calculate the valid classes if (emptyPrefix || acceptClass(type, className, classType, prefix, hasDot)) { classNames.add(className); } break; } } } } } } catch (Exception e) { // Just ignore } return classNames; }
From source file:org.eclipse.jpt.jpa.eclipselink.ui.internal.wizards.EclipseLinkDynamicEntityClassWizardPage.java
License:Open Source License
private IPackageFragment getSelectedPackageFragment() { IWorkbenchWindow window = WorkbenchTools.getActiveWindow(); if (window == null) return null; ISelection selection = window.getSelectionService().getSelection(); if (selection == null) return null; IJavaElement element = getInitialJavaElement(selection); if (element != null) { if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { return (IPackageFragment) element; } else if (element.getElementType() == IJavaElement.COMPILATION_UNIT) { IJavaElement parent = ((ICompilationUnit) element).getParent(); if (parent.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { return (IPackageFragment) parent; }/* ww w . j a v a 2 s . c o m*/ } else if (element.getElementType() == IJavaElement.TYPE) { return ((IType) element).getPackageFragment(); } } return null; }
From source file:org.eclipse.jpt.jpa.ui.internal.handlers.MakePersistentHandler.java
License:Open Source License
/** * Return a map containing lists of types, keyed by project. * <p>// w ww . j a v a 2 s.com * The action is contributed for:<ul> * <li>{@link IType} * <li>{@link ICompilationUnit} * <li>{@link IPackageFragment} * <li>{@link IPackageFragmentRoot} that is a source folder * </ul> */ private Map<IProject, Set<IType>> buildSelectedTypes(ISelection currentSelection) { if (!(currentSelection instanceof StructuredSelection)) { return Collections.emptyMap(); } HashMap<IProject, Set<IType>> types = new HashMap<IProject, Set<IType>>(); for (Object sel : ((StructuredSelection) currentSelection).toList()) { switch (((IJavaElement) sel).getElementType()) { case IJavaElement.PACKAGE_FRAGMENT_ROOT: this.addSelectedTypes((IPackageFragmentRoot) sel, types); break; case IJavaElement.PACKAGE_FRAGMENT: this.addSelectedTypes((IPackageFragment) sel, types); break; case IJavaElement.COMPILATION_UNIT: this.addSelectedTypes((ICompilationUnit) sel, types); break; case IJavaElement.TYPE: this.addSelectedType((IType) sel, types); break; default: break; } } return types; }
From source file:org.eclipse.jst.common.jdt.internal.integration.ui.WTPUIWorkingCopyManager.java
License:Open Source License
protected IEditorInput getEditorInput(IJavaElement element) throws JavaModelException { IJavaElement localElement = element; while (localElement != null) { switch (localElement.getElementType()) { case IJavaElement.COMPILATION_UNIT: { ICompilationUnit cu = (ICompilationUnit) localElement; if (cu.isWorkingCopy()) cu = cu.getPrimary();//w w w .ja va2 s . c o m IResource resource = cu.getUnderlyingResource(); if (resource.getType() == IResource.FILE) return new FileEditorInput((IFile) resource); break; } case IJavaElement.CLASS_FILE: return new InternalClassFileEditorInput((IClassFile) localElement); } localElement = localElement.getParent(); } return null; }
From source file:org.eclipse.jst.j2ee.internal.common.operations.JavaModelUtil.java
License:Open Source License
public static boolean isExceptionToBeLogged(CoreException exception) { if (!(exception instanceof JavaModelException)) return true; JavaModelException je = (JavaModelException) exception; if (!je.isDoesNotExist()) return true; IJavaElement[] elements = je.getJavaModelStatus().getElements(); for (int i = 0; i < elements.length; i++) { IJavaElement element = elements[i]; // if the element is already a compilation unit don't log // does not exist exceptions. See bug // https://bugs.eclipse.org/bugs/show_bug.cgi?id=75894 // for more details if (element.getElementType() == IJavaElement.COMPILATION_UNIT) continue; ICompilationUnit unit = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT); if (unit == null) return true; if (!unit.isWorkingCopy()) return true; }/*w ww . j a v a 2s.c o m*/ return false; }
From source file:org.eclipse.jst.j2ee.internal.common.operations.JavaModelUtil.java
License:Open Source License
private static void addAllCus(HashSet/*<ICompilationUnit>*/ collector, IJavaElement javaElement) throws JavaModelException { switch (javaElement.getElementType()) { case IJavaElement.JAVA_PROJECT: IJavaProject javaProject = (IJavaProject) javaElement; IPackageFragmentRoot[] packageFragmentRoots = javaProject.getPackageFragmentRoots(); for (int i = 0; i < packageFragmentRoots.length; i++) addAllCus(collector, packageFragmentRoots[i]); return;/*from ww w .ja v a 2 s .c o m*/ case IJavaElement.PACKAGE_FRAGMENT_ROOT: IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) javaElement; if (packageFragmentRoot.getKind() != IPackageFragmentRoot.K_SOURCE) return; IJavaElement[] packageFragments = packageFragmentRoot.getChildren(); for (int j = 0; j < packageFragments.length; j++) addAllCus(collector, packageFragments[j]); return; case IJavaElement.PACKAGE_FRAGMENT: IPackageFragment packageFragment = (IPackageFragment) javaElement; collector.addAll(Arrays.asList(packageFragment.getCompilationUnits())); return; case IJavaElement.COMPILATION_UNIT: collector.add(javaElement); return; default: IJavaElement cu = javaElement.getAncestor(IJavaElement.COMPILATION_UNIT); if (cu != null) collector.add(cu); } }
From source file:org.eclipse.jst.j2ee.internal.web.deployables.WebDeployableArtifactUtil.java
License:Open Source License
private static IType[] getTypes(IJavaElement element) { try {//from www . j a v a 2 s . c o m if (element.getElementType() != IJavaElement.COMPILATION_UNIT) return null; return ((ICompilationUnit) element).getAllTypes(); } catch (Exception e) { return null; } }
From source file:org.eclipse.jst.j2ee.internal.wizard.NewJavaClassWizardPage.java
License:Open Source License
/** * @return//from w ww . j a v a2 s. c o m */ private IPackageFragment getSelectedPackageFragment() { IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); if (window == null) return null; ISelection selection = window.getSelectionService().getSelection(); if (selection == null) return null; IJavaElement element = getInitialJavaElement(selection); if (element != null) { if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { return (IPackageFragment) element; } else if (element.getElementType() == IJavaElement.COMPILATION_UNIT) { IJavaElement parent = ((ICompilationUnit) element).getParent(); if (parent.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { return (IPackageFragment) parent; } } else if (element.getElementType() == IJavaElement.TYPE) { return ((IType) element).getPackageFragment(); } } return null; }
From source file:org.eclipse.jst.jsf.common.internal.types.TypeInfoCache.java
License:Open Source License
/**Removes all cached info that may be affected by the given change. * @param delta - the change in the java model *//*from w w w .jav a 2 s. c o m*/ protected void updateChangedJavaElement(IJavaElementDelta delta) { IJavaElement element = delta.getElement(); switch (element.getElementType()) { case IJavaElement.JAVA_MODEL: updateChangedJavaModel(delta, element); break; case IJavaElement.JAVA_PROJECT: updateChangedJavaProject(delta, element); break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: updateChangedPackageFragmentRoot(delta, element); break; case IJavaElement.PACKAGE_FRAGMENT: updateChangedPackageFragment(delta, (IPackageFragment) element); break; case IJavaElement.CLASS_FILE: case IJavaElement.COMPILATION_UNIT: updateChangedOpenable(delta, element); break; } }
From source file:org.eclipse.jst.jsf.common.ui.internal.utils.JavaModelUtil.java
License:Open Source License
/** * http://bugs.eclipse.org/bugs/show_bug.cgi?id=19253 * //ww w . j a v a2 s .c o m * Reconciling happens in a separate thread. This can cause a situation * where the Java element gets disposed after an exists test has been done. * So we should not log not present exceptions when they happen in working * copies. * @param exception * @return true if filter not present */ public static boolean filterNotPresentException(CoreException exception) { if (!(exception instanceof JavaModelException)) { return true; } JavaModelException je = (JavaModelException) exception; if (!je.isDoesNotExist()) { return true; } IJavaElement[] elements = je.getJavaModelStatus().getElements(); for (int i = 0; i < elements.length; i++) { IJavaElement element = elements[i]; ICompilationUnit unit = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT); if (unit == null) { return true; } if (!unit.isWorkingCopy()) { return true; } } return false; }