List of usage examples for org.eclipse.jdt.core IJavaProject getAllPackageFragmentRoots
IPackageFragmentRoot[] getAllPackageFragmentRoots() throws JavaModelException;
From source file:org.eclipse.libra.facet.OSGiBundleFacetInstallDelegate.java
License:Open Source License
private IPath[] getJavaSourceFolderPaths(IJavaProject javaProject) throws JavaModelException { List<IPath> paths = new ArrayList<IPath>(); IPackageFragmentRoot[] fragmentRoots = javaProject.getAllPackageFragmentRoots(); for (IPackageFragmentRoot fragmentRoot : fragmentRoots) { if (fragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE && fragmentRoot.getParent().equals(javaProject)) { paths.add(fragmentRoot.getPath()); }//w w w . j a va 2 s . c om } return paths.toArray(new IPath[paths.size()]); }
From source file:org.eclipse.ocl.xtext.oclstdlib.scoping.JavaClassScope.java
License:Open Source License
@Override protected Iterable<IEObjectDescription> getAllLocalElements() { // if (true) throw new UnsupportedOperationException(); Set<String> classNames; if (doneFullScan) { classNames = name2class.keySet(); } else {//from w w w. j a v a 2 s . c om doneFullScan = true; classNames = new HashSet<String>(65536); if (classLoader instanceof BundleReference) { Bundle bundle = ((BundleReference) classLoader).getBundle(); IProject iProject = ResourcesPlugin.getWorkspace().getRoot().getProject(bundle.getSymbolicName()); IJavaProject javaProject = JavaCore.create(iProject); try { // IClasspathEntry[] resolvedClasspath = javaProject.getResolvedClasspath(true); // scanClassPath(resolvedClasspath, classNames); IPackageFragmentRoot[] packageFragmentRoots = javaProject.getAllPackageFragmentRoots(); scanJavaElements(packageFragmentRoots, classNames); } catch (JavaModelException e) { } } else if (project != null) { IJavaProject javaProject = JavaCore.create(project); try { IPackageFragmentRoot[] packageFragmentRoots = javaProject.getAllPackageFragmentRoots(); scanJavaElements(packageFragmentRoots, classNames); } catch (JavaModelException e) { } } else { // scanClassPath(classNames); // scanBundles(classNames); } } List<String> sortedNames = new ArrayList<String>(classNames); Collections.sort(sortedNames); List<IEObjectDescription> results = new ArrayList<IEObjectDescription>(); for (String className : sortedNames) { if (className != null) { results.add(getEObjectDescription(className)); } } return results; }
From source file:org.eclipse.pde.api.tools.builder.tests.compatibility.ProjectTypeContainerTests.java
License:Open Source License
protected IPackageFragment[] getAllPackages() throws CoreException { IJavaProject project = JavaCore.create(getEnv().getProject("bundle.a")); //$NON-NLS-1$ IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots(); List<IPackageFragment> pkgs = new ArrayList<IPackageFragment>(); for (int i = 0; i < roots.length; i++) { IPackageFragmentRoot root = roots[i]; if (root.getKind() == IPackageFragmentRoot.K_SOURCE) { IJavaElement[] children = root.getChildren(); for (int j = 0; j < children.length; j++) { IPackageFragment frag = (IPackageFragment) children[j]; pkgs.add(frag);/* w w w.j av a2s .c om*/ collectAllPackages(frag, pkgs); } } } return pkgs.toArray(new IPackageFragment[pkgs.size()]); }
From source file:org.eclipse.pde.internal.core.search.PluginJavaSearchUtil.java
License:Open Source License
public static IPackageFragment[] collectPackageFragments(IPluginModelBase[] models, IJavaProject parentProject, boolean filterEmptyPackages) throws JavaModelException { ArrayList<IPackageFragment> result = new ArrayList<IPackageFragment>(); IPackageFragmentRoot[] roots = parentProject.getAllPackageFragmentRoots(); for (int i = 0; i < models.length; i++) { IPluginModelBase model = models[i]; IResource resource = model.getUnderlyingResource(); if (resource == null) { ArrayList<Path> libraryPaths = new ArrayList<Path>(); addLibraryPaths(model, libraryPaths); for (int j = 0; j < roots.length; j++) { if (libraryPaths.contains(roots[j].getPath())) { extractPackageFragments(roots[j], result, filterEmptyPackages); }//from w w w.ja v a 2s. c om } } else { IProject project = resource.getProject(); for (int j = 0; j < roots.length; j++) { IJavaProject jProject = (IJavaProject) roots[j].getParent(); if (jProject.getProject().equals(project)) { extractPackageFragments(roots[j], result, filterEmptyPackages); } } } } return result.toArray(new IPackageFragment[result.size()]); }
From source file:org.eclipse.pde.internal.core.SearchablePluginsManager.java
License:Open Source License
private IPackageFragmentRoot findPackageFragmentRoot(IPath jarPath) { IJavaProject jProject = getProxyProject(); if (jProject != null) { try {/*w ww .j a v a 2s . c o m*/ IPackageFragmentRoot[] roots = jProject.getAllPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { IPackageFragmentRoot root = roots[i]; IPath path = root.getPath(); if (path.equals(jarPath)) return root; } } catch (JavaModelException e) { } } // Find in other plug-in (and fragments) projects dependencies IPluginModelBase[] pluginModels = PluginRegistry.getWorkspaceModels(); for (int i = 0; i < pluginModels.length; i++) { IProject project = pluginModels[i].getUnderlyingResource().getProject(); IJavaProject javaProject = JavaCore.create(project); try { IPackageFragmentRoot[] roots = javaProject.getAllPackageFragmentRoots(); for (int j = 0; j < roots.length; j++) { IPackageFragmentRoot root = roots[j]; IPath path = root.getPath(); if (path.equals(jarPath)) return root; } } catch (JavaModelException e) { } } return null; }
From source file:org.eclipse.pde.internal.core.util.PDEJavaHelper.java
License:Open Source License
public static IPackageFragmentRoot[] getNonJRERoots(IJavaProject project) { ArrayList<IPackageFragmentRoot> result = new ArrayList<IPackageFragmentRoot>(); try {/* w w w . j av a 2 s .c om*/ IPackageFragmentRoot[] roots = project.getAllPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { if (!isJRELibrary(roots[i])) { result.add(roots[i]); } } } catch (JavaModelException e) { } return result.toArray(new IPackageFragmentRoot[result.size()]); }
From source file:org.eclipse.pde.internal.core.util.PDEJavaHelper.java
License:Open Source License
private static IPackageFragment getExternalPackageFragment(String packageName, String pluginID) { if (pluginID == null) return null; IPluginModelBase base = null;// w w w .java 2 s . c om try { IPluginModelBase plugin = PluginRegistry.findModel(pluginID); if (plugin == null) return null; ImportPackageSpecification[] packages = plugin.getBundleDescription().getImportPackages(); for (int i = 0; i < packages.length; i++) if (packages[i].getName().equals(packageName)) { ExportPackageDescription desc = (ExportPackageDescription) packages[i].getSupplier(); if (desc != null) base = PluginRegistry.findModel(desc.getExporter().getSymbolicName()); break; } if (base == null) return null; IResource res = base.getUnderlyingResource(); if (res != null) { IJavaProject jp = JavaCore.create(res.getProject()); if (jp != null) try { IPackageFragmentRoot[] roots = jp.getAllPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { IPackageFragment frag = roots[i].getPackageFragment(packageName); if (frag.exists()) return frag; } } catch (JavaModelException e) { } } IProject proj = PDECore.getWorkspace().getRoot() .getProject(SearchablePluginsManager.PROXY_PROJECT_NAME); if (proj == null) return searchWorkspaceForPackage(packageName, base); IJavaProject jp = JavaCore.create(proj); IPath path = new Path(base.getInstallLocation()); // if model is in jar form if (!path.toFile().isDirectory()) { IPackageFragmentRoot root = jp.findPackageFragmentRoot(path); if (root != null) { IPackageFragment frag = root.getPackageFragment(packageName); if (frag.exists()) return frag; } // else model is in folder form, try to find model's libraries on filesystem } else { IPluginLibrary[] libs = base.getPluginBase().getLibraries(); for (int i = 0; i < libs.length; i++) { if (IPluginLibrary.RESOURCE.equals(libs[i].getType())) continue; String libName = ClasspathUtilCore.expandLibraryName(libs[i].getName()); IPackageFragmentRoot root = jp.findPackageFragmentRoot(path.append(libName)); if (root != null) { IPackageFragment frag = root.getPackageFragment(packageName); if (frag.exists()) return frag; } } } } catch (JavaModelException e) { } return searchWorkspaceForPackage(packageName, base); }
From source file:org.eclipse.recommenders.internal.coordinates.rcp.EclipseDependencyListener.java
License:Open Source License
private Set<DependencyInfo> searchForAllDependenciesOfProject(final IJavaProject javaProject) { Set<DependencyInfo> dependencies = Sets.newHashSet(); Set<IPackageFragmentRoot> jreRoots = jrePackageFragmentRoots.get(getDependencyInfoForProject(javaProject)); try {/* w w w .j a va 2s . c o m*/ for (final IPackageFragmentRoot packageFragmentRoot : javaProject.getAllPackageFragmentRoots()) { if (!jreRoots.contains(packageFragmentRoot) && packageFragmentRoot instanceof JarPackageFragmentRoot) { DependencyInfo dependencyInfo = createDependencyInfoForJar(packageFragmentRoot); dependencies.add(dependencyInfo); } else if (packageFragmentRoot.getKind() == IPackageFragmentRoot.K_SOURCE && packageFragmentRoot.getJavaProject() != null) { DependencyInfo dependencyInfo = DependencyInfos .createDependencyInfoForProject(packageFragmentRoot.getJavaProject()); dependencies.add(dependencyInfo); } } } catch (JavaModelException e) { Logs.log(LogMessages.ERROR_FAILED_TO_SEARCH_FOR_PROJECT_DEPENDENCIES, e, javaProject); } return dependencies; }
From source file:org.eclipse.recommenders.models.dependencies.rcp.EclipseDependencyListener.java
License:Open Source License
private Set<DependencyInfo> searchForAllDependencyiesOfProject(final IJavaProject javaProject) { Set<DependencyInfo> dependencies = Sets.newHashSet(); Set<IPackageFragmentRoot> jreRoots = jrePackageFragmentRoots .get(createDependencyInfoForProject(javaProject)); try {/*from w ww . j ava2 s .c om*/ for (final IPackageFragmentRoot packageFragmetRoot : javaProject.getAllPackageFragmentRoots()) { if (!jreRoots.contains(packageFragmetRoot) && packageFragmetRoot instanceof JarPackageFragmentRoot) { DependencyInfo dependencyInfo = createDependencyInfoForJAR( (JarPackageFragmentRoot) packageFragmetRoot); dependencies.add(dependencyInfo); } } } catch (JavaModelException e1) { e1.printStackTrace(); } return dependencies; }
From source file:org.eclipse.wst.xml.search.editor.internal.contentassist.JavaCompletionUtils.java
License:Open Source License
private static IPackageFragment getPackageFragment(IJavaProject project, String prefix) throws JavaModelException { int dot = prefix.lastIndexOf('.'); if (dot > -1) { String packageName = prefix.substring(0, dot); IPackageFragmentRoot aipackagefragmentroot1[]; int l = (aipackagefragmentroot1 = project.getPackageFragmentRoots()).length; for (int j = 0; j < l; j++) { IPackageFragmentRoot root = aipackagefragmentroot1[j]; IPackageFragment p = root.getPackageFragment(packageName); if (p != null && p.exists()) return p; }/*from ww w . jav a 2 s. c om*/ IPackageFragment packages[] = project.getPackageFragments(); IPackageFragment aipackagefragment[]; int j1 = (aipackagefragment = packages).length; for (int i1 = 0; i1 < j1; i1++) { IPackageFragment p = aipackagefragment[i1]; if (p.getElementName().equals(packageName)) return p; } } else { IPackageFragmentRoot aipackagefragmentroot[]; int k = (aipackagefragmentroot = project.getAllPackageFragmentRoots()).length; for (int i = 0; i < k; i++) { IPackageFragmentRoot p = aipackagefragmentroot[i]; if (p.getKind() == 1) return p.getPackageFragment(""); } } return project.getPackageFragments()[0]; }