List of usage examples for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT
int PACKAGE_FRAGMENT
To view the source code for org.eclipse.jdt.core IJavaElement PACKAGE_FRAGMENT.
Click Source Link
From source file:org.eclipse.jdt.internal.core.JavaModelManager.java
License:Open Source License
public synchronized Object removeInfoAndChildren(JavaElement element) throws JavaModelException { Object info = this.cache.peekAtInfo(element); if (info != null) { boolean wasVerbose = false; try {/*from w ww . j a va2 s . c o m*/ if (JavaModelCache.VERBOSE) { String elementType; switch (element.getElementType()) { case IJavaElement.JAVA_PROJECT: elementType = "project"; //$NON-NLS-1$ break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: elementType = "root"; //$NON-NLS-1$ break; case IJavaElement.PACKAGE_FRAGMENT: elementType = "package"; //$NON-NLS-1$ break; case IJavaElement.CLASS_FILE: elementType = "class file"; //$NON-NLS-1$ break; case IJavaElement.COMPILATION_UNIT: elementType = "compilation unit"; //$NON-NLS-1$ break; default: elementType = "element"; //$NON-NLS-1$ } System.out.println(Thread.currentThread() + " CLOSING " + elementType + " " //$NON-NLS-1$//$NON-NLS-2$ + element.toStringWithAncestors()); wasVerbose = true; JavaModelCache.VERBOSE = false; } element.closing(info); if (element instanceof IParent) { closeChildren(info); } this.cache.removeInfo(element); if (wasVerbose) { System.out.println(this.cache.toStringFillingRation("-> ")); //$NON-NLS-1$ } } finally { JavaModelCache.VERBOSE = wasVerbose; } return info; } return null; }
From source file:org.eclipse.jdt.internal.core.JavaProject.java
License:Open Source License
public boolean isOnClasspath(IJavaElement element) { IClasspathEntry[] rawClasspath;//from w ww . j av a 2s. c om try { rawClasspath = getRawClasspath(); } catch (JavaModelException e) { return false; // not a Java project } int elementType = element.getElementType(); boolean isPackageFragmentRoot = false; boolean isFolderPath = false; boolean isSource = false; switch (elementType) { case IJavaElement.JAVA_MODEL: return false; case IJavaElement.JAVA_PROJECT: break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: isPackageFragmentRoot = true; break; case IJavaElement.PACKAGE_FRAGMENT: isFolderPath = !((IPackageFragmentRoot) element.getParent()).isArchive(); break; case IJavaElement.COMPILATION_UNIT: isSource = true; break; default: isSource = element.getAncestor(IJavaElement.COMPILATION_UNIT) != null; break; } IPath elementPath = element.getPath(); // first look at unresolved entries int length = rawClasspath.length; for (int i = 0; i < length; i++) { IClasspathEntry entry = rawClasspath[i]; switch (entry.getEntryKind()) { case IClasspathEntry.CPE_LIBRARY: case IClasspathEntry.CPE_PROJECT: case IClasspathEntry.CPE_SOURCE: if (isOnClasspathEntry(elementPath, isFolderPath, isPackageFragmentRoot, entry)) return true; break; } } // no need to go further for compilation units and elements inside a compilation unit // it can only be in a source folder, thus on the raw classpath if (isSource) return false; // https://bugs.eclipse.org/bugs/show_bug.cgi?id=304081 // All the resolved classpath entries need to be considered, including the referenced classpath entries IClasspathEntry[] resolvedClasspath = null; try { resolvedClasspath = getResolvedClasspath(); } catch (JavaModelException e) { return false; // Perhaps, not a Java project } for (int index = 0; index < resolvedClasspath.length; index++) { if (isOnClasspathEntry(elementPath, isFolderPath, isPackageFragmentRoot, resolvedClasspath[index])) return true; } return false; }
From source file:org.eclipse.jdt.internal.core.search.matching.MatchLocator.java
License:Open Source License
private boolean filterEnum(SearchMatch match) { // filter org.apache.commons.lang.enum package for projects above 1.5 // https://bugs.eclipse.org/bugs/show_bug.cgi?id=317264 IJavaElement element = (IJavaElement) match.getElement(); PackageFragment pkg = (PackageFragment) element.getAncestor(IJavaElement.PACKAGE_FRAGMENT); if (pkg != null) { // enum was found in org.apache.commons.lang.enum at index 5 if (pkg.names.length == 5 && pkg.names[4].equals("enum")) { //$NON-NLS-1$ if (this.options == null) { IJavaProject proj = (IJavaProject) pkg.getAncestor(IJavaElement.JAVA_PROJECT); String complianceStr = proj.getOption(CompilerOptions.OPTION_Source, true); if (CompilerOptions.versionToJdkLevel(complianceStr) >= ClassFileConstants.JDK1_5) return true; } else if (this.options.sourceLevel >= ClassFileConstants.JDK1_5) { return true; }/*from w w w . ja v a 2s. c o m*/ } } return false; }
From source file:org.eclipse.jem.workbench.utility.JavaModelListener.java
License:Open Source License
/** * Dispatch the java element delta. This method should normally not be overridden. One * usage would be to add delta types that are to be processed and dispatched by the * subclasses. For example also dispatch on {@link IJavaElement#IMPORT_CONTAINER}. Subclasses * should call <code>super.processDelta(IJavaElementDelta)</code> if it is not one they * are interested in./*from www.jav a2 s . c om*/ * * @param delta * * @since 1.2.0 */ public void processDelta(IJavaElementDelta delta) { IJavaElement element = delta.getElement(); // if the class path has changed we refresh the resolved container cache int flags = delta.getFlags(); if (((flags & IJavaElementDelta.F_RESOLVED_CLASSPATH_CHANGED) != 0) && !resolvedContainers.isEmpty()) { resolvedContainers.clear(); } switch (element.getElementType()) { case IJavaElement.JAVA_MODEL: processJavaElementChanged((IJavaModel) element, delta); break; case IJavaElement.JAVA_PROJECT: processJavaElementChanged((IJavaProject) element, delta); break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: processJavaElementChanged((IPackageFragmentRoot) element, delta); break; case IJavaElement.PACKAGE_FRAGMENT: processJavaElementChanged((IPackageFragment) element, delta); break; case IJavaElement.COMPILATION_UNIT: processJavaElementChanged((ICompilationUnit) element, delta); processContentChanged(delta); break; case IJavaElement.CLASS_FILE: processJavaElementChanged((IClassFile) element, delta); break; case IJavaElement.TYPE: processJavaElementChanged((IType) element, delta); break; // Note: if we are to update the Method/Field adapters, we should process the // IJavaElement.METHOD and IJavaElement.FIELD } }
From source file:org.eclipse.jpt.common.core.internal.utility.JavaProjectTools.java
License:Open Source License
private static Iterable<IType> getTypes_(IJavaProject javaProject) throws JavaModelException { List<IType> typesList = new ArrayList<IType>(); IPackageFragmentRoot[] pkgRoots = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot root : pkgRoots) { IJavaElement[] jElements = root.getChildren(); for (IJavaElement jElement : jElements) { if (jElement.getElementType() == IJavaElement.PACKAGE_FRAGMENT) { ICompilationUnit[] units = ((IPackageFragment) jElement).getCompilationUnits(); for (ICompilationUnit unit : units) { CollectionTools.addAll(typesList, unit.getTypes()); }//from w w w. j a v a2 s. c o m } } } return typesList; }
From source file:org.eclipse.jpt.common.core.tests.internal.resource.java.JavaResourceModelTestCase.java
License:Open Source License
/** * NB: this is copied from GenericJpaProject, so it might need to be * kept in synch with that code if it changes... yech... *//*from w w w .j a v a 2 s . c om*/ protected void syncWithJavaDelta(IJavaElementDelta delta) { switch (delta.getElement().getElementType()) { case IJavaElement.JAVA_MODEL: case IJavaElement.JAVA_PROJECT: case IJavaElement.PACKAGE_FRAGMENT_ROOT: case IJavaElement.PACKAGE_FRAGMENT: this.syncWithJavaDeltaChildren(delta); break; case IJavaElement.COMPILATION_UNIT: this.javaCompilationUnitChanged(delta); break; default: break; // ignore the elements inside a compilation unit } }
From source file:org.eclipse.jpt.jaxb.core.internal.AbstractJaxbProject.java
License:Open Source License
/** * We recurse back here from {@link #processJavaDeltaChildren(IJavaElementDelta)}. *//*from w w w. j av a 2 s . co m*/ protected void processJavaDelta(IJavaElementDelta delta) { switch (delta.getElement().getElementType()) { case IJavaElement.JAVA_MODEL: this.processJavaModelDelta(delta); break; case IJavaElement.JAVA_PROJECT: this.processJavaProjectDelta(delta); break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: this.processJavaPackageFragmentRootDelta(delta); break; case IJavaElement.PACKAGE_FRAGMENT: this.processJavaPackageFragmentDelta(delta); break; case IJavaElement.COMPILATION_UNIT: this.processJavaCompilationUnitDelta(delta); break; default: break; // ignore the elements inside a compilation unit } }
From source file:org.eclipse.jpt.jaxb.core.internal.resource.AbstractJaxbFileResourceModel.java
License:Open Source License
protected String buildPackageName_() { IJavaElement javaElement = JavaCore.create(this.file.getParent()); if ((javaElement != null) && (javaElement.getElementType() == IJavaElement.PACKAGE_FRAGMENT)) { return ((IPackageFragment) javaElement).getElementName(); }/*from ww w . jav a 2s . c om*/ return null; }
From source file:org.eclipse.jpt.jaxb.ui.internal.filters.ContainerFilter.java
License:Open Source License
@Override public boolean select(Viewer viewer, Object parent, Object element) { boolean isContainer = element instanceof IContainer; if (!isContainer && element instanceof IJavaElement) { int type = ((IJavaElement) element).getElementType(); isContainer = (type == IJavaElement.JAVA_MODEL || type == IJavaElement.JAVA_PROJECT || type == IJavaElement.PACKAGE_FRAGMENT || type == IJavaElement.PACKAGE_FRAGMENT_ROOT); }/* w w w.j a va 2s. c om*/ return !isContainer; }
From source file:org.eclipse.jpt.jaxb.ui.internal.filters.NonContainerFilter.java
License:Open Source License
@Override public boolean select(Viewer viewer, Object parent, Object element) { boolean isContainer = element instanceof IContainer; int type;/*www . j a v a 2 s . c o m*/ if (!isContainer && element instanceof IJavaElement) { type = ((IJavaElement) element).getElementType(); isContainer = (type == IJavaElement.JAVA_MODEL || type == IJavaElement.JAVA_PROJECT || type == IJavaElement.PACKAGE_FRAGMENT || type == IJavaElement.PACKAGE_FRAGMENT_ROOT); } if (isContainer && (element instanceof IJavaElement)) { type = ((IJavaElement) element).getElementType(); if (type == IJavaElement.JAVA_PROJECT) { String projectName = ((IJavaProject) element).getElementName(); return projectName.equals(this.projectName); } } return isContainer; }