List of usage examples for org.eclipse.jdt.core IJavaElement JAVA_PROJECT
int JAVA_PROJECT
To view the source code for org.eclipse.jdt.core IJavaElement JAVA_PROJECT.
Click Source Link
From source file:org.eclipse.emf.cdo.releng.apireports.ApiReportsActor.java
License:Open Source License
public static ApiScope walkStructureSelection(List<Object> projects, IProgressMonitor monitor) { ApiScope scope = new ApiScope(); IApiBaseline workspaceBaseline = ApiBaselineManager.getManager().getWorkspaceBaseline(); if (workspaceBaseline == null) { return scope; }/*from ww w . j av a2 s . c o m*/ Collections.sort(projects, new Comparator() { public int compare(Object o1, Object o2) { if (o1 instanceof IJavaElement && o2 instanceof IJavaElement) { IJavaElement element = (IJavaElement) o1; IJavaElement element2 = (IJavaElement) o2; return element.getElementType() - element2.getElementType(); } return 0; } }); for (Object project : projects) { if (project instanceof IJavaElement) { IJavaElement element = (IJavaElement) project; IJavaProject javaProject = element.getJavaProject(); try { switch (element.getElementType()) { case IJavaElement.COMPILATION_UNIT: { ICompilationUnit compilationUnit = (ICompilationUnit) element; IApiComponent apiComponent = workspaceBaseline .getApiComponent(javaProject.getElementName()); if (apiComponent != null) { addElementFor(compilationUnit, apiComponent, scope); } break; } case IJavaElement.PACKAGE_FRAGMENT: { IPackageFragment fragment = (IPackageFragment) element; IApiComponent apiComponent = workspaceBaseline .getApiComponent(javaProject.getElementName()); IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) fragment .getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT); boolean isArchive = false; if (packageFragmentRoot != null) { isArchive = packageFragmentRoot.isArchive(); } if (apiComponent != null) { addElementFor(fragment, isArchive, apiComponent, scope); } break; } case IJavaElement.PACKAGE_FRAGMENT_ROOT: { IPackageFragmentRoot fragmentRoot = (IPackageFragmentRoot) element; IApiComponent apiComponent = workspaceBaseline .getApiComponent(javaProject.getElementName()); if (apiComponent != null) { addElementFor(fragmentRoot, apiComponent, scope); } break; } case IJavaElement.JAVA_PROJECT: IApiComponent apiComponent = workspaceBaseline .getApiComponent(javaProject.getElementName()); if (apiComponent != null) { scope.addElement(apiComponent); } break; } } catch (JavaModelException e) { ApiPlugin.log(e); } catch (CoreException e) { ApiPlugin.log(e); } } } return scope; }
From source file:org.eclipse.fx.ide.jdt.core.internal.JavaFXClasspathContainerInitializer.java
License:Open Source License
@Override public void initialize(IPath containerPath, IJavaProject project) throws CoreException { if (isValidJUnitContainerPath(containerPath)) { final JavaFXContainer container = getNewContainer(containerPath, project); JavaCore.setClasspathContainer(containerPath, new IJavaProject[] { project }, new IClasspathContainer[] { container }, null); }//from w ww. j a v a2s . c o m // register update hook IElementChangedListener listener = new IElementChangedListener() { @Override public void elementChanged(ElementChangedEvent event) { if (event.getDelta().getKind() == IJavaElementDelta.CHANGED && (event.getDelta().getFlags() & IJavaElementDelta.F_CHILDREN) == IJavaElementDelta.F_CHILDREN) { // change on JavaModel for (IJavaElementDelta delta : event.getDelta().getAffectedChildren()) { if ((delta.getFlags() & IJavaElementDelta.F_CLASSPATH_CHANGED) == IJavaElementDelta.F_CLASSPATH_CHANGED) { // classpath change on ?? if (delta.getElement().getElementType() == IJavaElement.JAVA_PROJECT && delta.getElement().getJavaProject().equals(project)) { // classpath change try { requestClasspathContainerUpdate(containerPath, project, null); } catch (CoreException e) { e.printStackTrace(); } } } } } } }; JavaCore.addElementChangedListener(listener); // TODO remove listener }
From source file:org.eclipse.gmf.tests.JDTUtil.java
License:Open Source License
private void collectProblems(IJavaElement jElement, IMemberProcessor[] processors) { try {//from www. j a v a 2 s . c om switch (jElement.getElementType()) { case IJavaElement.JAVA_PROJECT: { IJavaProject jProject = (IJavaProject) jElement; IPackageFragmentRoot[] roots = jProject.getPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (roots[i].getKind() == IPackageFragmentRoot.K_SOURCE) { collectProblems(roots[i], processors); } } } break; case IJavaElement.PACKAGE_FRAGMENT_ROOT: { IPackageFragmentRoot root = (IPackageFragmentRoot) jElement; IJavaElement[] children = root.getChildren(); for (int i = 0; i < children.length; i++) { collectProblems(children[i], processors); } } break; case IJavaElement.PACKAGE_FRAGMENT: { IPackageFragment pf = (IPackageFragment) jElement; ICompilationUnit[] compilationUnits = pf.getCompilationUnits(); for (int i = 0; i < compilationUnits.length; i++) { collectProblems(compilationUnits[i], processors); } } break; case IJavaElement.COMPILATION_UNIT: { ICompilationUnit compilationUnit = (ICompilationUnit) jElement; IType[] types = compilationUnit.getTypes(); for (int i = 0; i < types.length; i++) { collectProblems(types[i], processors); } } break; case IJavaElement.TYPE: { IMember member = (IMember) jElement; collectProblems(member, processors, false); } break; } } catch (JavaModelException e) { myAggregator.add(e.getStatus()); } }
From source file:org.eclipse.gmt.modisco.jm2t.modelconverter.javamodisco.internal.core.DiscovererFactory.java
License:Open Source License
public IExtendedDiscover createDiscoverer(IJavaElement element) { int type = element.getElementType(); switch (type) { case IJavaElement.JAVA_PROJECT: return new ExtendedDiscoverJavaModelFromJavaProject((IJavaProject) element); case IJavaElement.COMPILATION_UNIT: return new ExtendedDiscoverJavaModelFromCompilationUnit((ICompilationUnit) element); case IJavaElement.CLASS_FILE: return new ExtendedDiscoverJavaModelFromClassFile((IClassFile) element); case IJavaElement.TYPE: return createDiscoverer(element.getParent()); case IJavaElement.PACKAGE_FRAGMENT: IPackageFragment packageFragment = (IPackageFragment) element; break;/*from w w w . j a v a 2s . c o m*/ case IJavaElement.PACKAGE_FRAGMENT_ROOT: // src folder is selected IPackageFragmentRoot packageFragmentRoot = (IPackageFragmentRoot) element; return createDiscoverer(packageFragmentRoot.getParent()); } return null; }
From source file:org.eclipse.imp.ui.explorer.ProjectExplorerActionGroup.java
License:Open Source License
private boolean isGoIntoTarget(Object element) { if (element == null) return false; if (element instanceof IJavaElement) { int type = ((IJavaElement) element).getElementType(); return type == IJavaElement.JAVA_PROJECT || type == IJavaElement.PACKAGE_FRAGMENT_ROOT || type == IJavaElement.PACKAGE_FRAGMENT; }//from w w w. j a v a 2 s. co m if (element instanceof IWorkingSet) { return true; } return false; }
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 ww w . j a v a2 s . c om*/ 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 w w. ja v a2 s.com*/ 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 . jav a2s. co 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. ja va 2s .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.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... *//* ww w . j a va 2 s . c o m*/ 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 } }