List of usage examples for org.eclipse.jdt.internal.core JavaProject getAllPackageFragmentRoots
@Deprecated
public IPackageFragmentRoot[] getAllPackageFragmentRoots(Map rootToResolvedEntries) throws JavaModelException
From source file:com.codenvy.ide.ext.java.server.internal.core.JavaProjectElementInfo.java
License:Open Source License
ProjectCache getProjectCache(JavaProject project) { ProjectCache cache = this.projectCache; if (cache == null) { IPackageFragmentRoot[] roots;//w w w . jav a2s . c o m Map reverseMap = new HashMap(3); try { roots = project.getAllPackageFragmentRoots(reverseMap); } catch (JavaModelException e) { // project does not exist: cannot happen since this is the info of the project roots = new IPackageFragmentRoot[0]; reverseMap.clear(); } // HashMap rootInfos = JavaModelManager.getJavaModelManager().deltaState.roots; HashMap pkgFragmentsCaches = new HashMap(); int length = roots.length; JavaModelManager manager = project.manager; //JavaModelManager.getJavaModelManager(); for (int i = 0; i < length; i++) { IPackageFragmentRoot root = roots[i]; DeltaProcessor.RootInfo rootInfo = null;// (DeltaProcessor.RootInfo) rootInfos.get(root.getPath()); if (rootInfo == null || rootInfo.project.equals(project)) { // ensure that an identical root is used (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=217059 ) roots[i] = root = (IPackageFragmentRoot) manager.getExistingElement(root); // compute fragment cache HashSetOfArray fragmentsCache = new HashSetOfArray(); initializePackageNames(root, fragmentsCache); pkgFragmentsCaches.put(root, fragmentsCache); } } cache = new ProjectCache(roots, reverseMap, pkgFragmentsCaches); this.projectCache = cache; } return cache; }