List of usage examples for org.eclipse.jdt.internal.core JavaProject getPackageFragmentRoots
@Override public IPackageFragmentRoot[] getPackageFragmentRoots() throws JavaModelException
From source file:org.eclipse.che.jdt.search.FindReferencesTest.java
License:Open Source License
@Test public void testSearchManagerFindUsage() throws Exception { IJavaProject aProject = JUnitSourceSetup.getProject(); IPackageFragmentRoot root = ((JavaProject) aProject) .getPackageFragmentRoot(new Path(JUnitSourceSetup.SRC_CONTAINER)); IPackageFragment packageFragment = root.createPackageFragment("che", true, null); StringBuilder a = new StringBuilder(); a.append("package che;\n"); a.append("public class A{}\n"); ICompilationUnit compilationUnitA = packageFragment.createCompilationUnit("A.java", a.toString(), true, null);//from www . jav a 2 s . c om StringBuilder b = new StringBuilder(); b.append("package che;\n"); b.append("import java.util.Comparator;\n"); b.append("import che.A;\n"); b.append("public class B extends A implements Comparator<A>{\n"); b.append(" private A a = null;\n"); b.append(" static{\n"); b.append(" A ddd = null;\n"); b.append(" }\n"); b.append(" @Override\n"); b.append(" public int compare(A o1, A o2) {\n"); b.append(" A bb = null;\n"); b.append(" return 0;\n"); b.append(" }\n"); b.append(" class SubB{\n"); b.append(" public A ccc = null;\n"); b.append(" }\n"); b.append("}\n"); b.append("class SubB2{\n"); b.append(" private final A foo = null;\n"); b.append("}\n"); packageFragment.createCompilationUnit("B.java", b.toString(), true, null); SearchManager manager = new SearchManager(); FindUsagesResponse response = manager.findUsage(aProject, "che.A", 26); assertThat(response.getSearchElementLabel()).isEqualTo("A"); List<org.eclipse.che.ide.ext.java.shared.dto.model.JavaProject> projects = response.getProjects(); assertThat(projects).isNotNull().isNotEmpty().hasSize(1); String expectedProjectPath = JUnitSourceSetup.getProject().getPath().toOSString(); org.eclipse.che.ide.ext.java.shared.dto.model.JavaProject project = projects.get(0); assertThat(project.getName()).isEqualTo(JUnitSourceSetup.PROJECT_NAME); assertThat(project.getPath()).isEqualTo(expectedProjectPath); assertThat(project.getPackageFragmentRoots()).isNotNull().isNotEmpty().hasSize(1); PackageFragmentRoot fragmentRoot = project.getPackageFragmentRoots().get(0); assertThat(fragmentRoot.getElementName()).isEqualTo(JUnitSourceSetup.SRC_CONTAINER); assertThat(fragmentRoot.getProjectPath()).isEqualTo(expectedProjectPath); assertThat(fragmentRoot.getPackageFragments()).isNotNull().isNotEmpty().hasSize(1); PackageFragment fragment = fragmentRoot.getPackageFragments().get(0); assertThat(fragment.getElementName()).isEqualTo("che"); assertThat(fragment.getProjectPath()).isEqualTo(expectedProjectPath); assertThat(fragment.getPath()) .isEqualTo(expectedProjectPath + "/" + JUnitSourceSetup.SRC_CONTAINER + "/che"); assertThat(fragment.getClassFiles()).isNotNull().isEmpty(); assertThat(fragment.getCompilationUnits()).isNotNull().isNotEmpty().hasSize(1); CompilationUnit compilationUnit = fragment.getCompilationUnits().get(0); assertThat(compilationUnit.getElementName()).isEqualTo("B.java"); assertThat(compilationUnit.getPath()) .isEqualTo(expectedProjectPath + "/" + JUnitSourceSetup.SRC_CONTAINER + "/che/B.java"); assertThat(compilationUnit.getImports()).hasSize(1); assertThat(compilationUnit.getTypes()).hasSize(2); }
From source file:org.eclipse.che.plugin.java.server.jdt.search.FindReferencesTest.java
License:Open Source License
@Test public void testSearchManagerFindUsage() throws Exception { IJavaProject aProject = JUnitSourceSetup.getProject(); IPackageFragmentRoot root = ((JavaProject) aProject) .getPackageFragmentRoot(new Path(JUnitSourceSetup.SRC_CONTAINER)); IPackageFragment packageFragment = root.createPackageFragment("che", true, null); StringBuilder a = new StringBuilder(); a.append("package che;\n"); a.append("public class A{}\n"); ICompilationUnit compilationUnitA = packageFragment.createCompilationUnit("A.java", a.toString(), true, null);//from www . ja v a 2 s . c om StringBuilder b = new StringBuilder(); b.append("package che;\n"); b.append("import java.util.Comparator;\n"); b.append("import che.A;\n"); b.append("public class B extends A implements Comparator<A>{\n"); b.append(" private A a = null;\n"); b.append(" static{\n"); b.append(" A ddd = null;\n"); b.append(" }\n"); b.append(" @Override\n"); b.append(" public int compare(A o1, A o2) {\n"); b.append(" A bb = null;\n"); b.append(" return 0;\n"); b.append(" }\n"); b.append(" class SubB{\n"); b.append(" public A ccc = null;\n"); b.append(" }\n"); b.append("}\n"); b.append("class SubB2{\n"); b.append(" private final A foo = null;\n"); b.append("}\n"); packageFragment.createCompilationUnit("B.java", b.toString(), true, null); SearchManager manager = new SearchManager(); FindUsagesResponse response = manager.findUsage(aProject, "che.A", 26); Assertions.assertThat(response.getSearchElementLabel()).isEqualTo("A"); List<org.eclipse.che.ide.ext.java.shared.dto.model.JavaProject> projects = response.getProjects(); Assertions.assertThat(projects).isNotNull().isNotEmpty().hasSize(1); String expectedProjectPath = JUnitSourceSetup.getProject().getPath().toOSString(); org.eclipse.che.ide.ext.java.shared.dto.model.JavaProject project = projects.get(0); Assertions.assertThat(project.getName()).isEqualTo(JUnitSourceSetup.PROJECT_NAME); Assertions.assertThat(project.getPath()).isEqualTo(expectedProjectPath); Assertions.assertThat(project.getPackageFragmentRoots()).isNotNull().isNotEmpty().hasSize(1); PackageFragmentRoot fragmentRoot = project.getPackageFragmentRoots().get(0); Assertions.assertThat(fragmentRoot.getElementName()).isEqualTo(JUnitSourceSetup.SRC_CONTAINER); Assertions.assertThat(fragmentRoot.getProjectPath()).isEqualTo(expectedProjectPath); Assertions.assertThat(fragmentRoot.getPackageFragments()).isNotNull().isNotEmpty().hasSize(1); PackageFragment fragment = fragmentRoot.getPackageFragments().get(0); Assertions.assertThat(fragment.getElementName()).isEqualTo("che"); Assertions.assertThat(fragment.getProjectPath()).isEqualTo(expectedProjectPath); Assertions.assertThat(fragment.getPath()) .isEqualTo(expectedProjectPath + "/" + JUnitSourceSetup.SRC_CONTAINER + "/che"); Assertions.assertThat(fragment.getClassFiles()).isNotNull().isEmpty(); Assertions.assertThat(fragment.getCompilationUnits()).isNotNull().isNotEmpty().hasSize(1); CompilationUnit compilationUnit = fragment.getCompilationUnits().get(0); Assertions.assertThat(compilationUnit.getElementName()).isEqualTo("B.java"); Assertions.assertThat(compilationUnit.getPath()) .isEqualTo(expectedProjectPath + "/" + JUnitSourceSetup.SRC_CONTAINER + "/che/B.java"); Assertions.assertThat(compilationUnit.getImports()).hasSize(1); Assertions.assertThat(compilationUnit.getTypes()).hasSize(2); }
From source file:org.eclipse.jdt.internal.core.search.matching.MatchLocator.java
License:Open Source License
/** * Locate the matches amongst the possible matches. *///from w w w . j av a2 s.c o m protected void locateMatches(JavaProject javaProject, PossibleMatchSet matchSet, int expected) throws CoreException { PossibleMatch[] possibleMatches = matchSet.getPossibleMatches(javaProject.getPackageFragmentRoots()); int length = possibleMatches.length; // increase progress from duplicate matches not stored in matchSet while adding... if (this.progressMonitor != null && expected > length) { this.progressWorked += expected - length; this.progressMonitor.worked(expected - length); } // locate matches (processed matches are limited to avoid problem while using VM default memory heap size) for (int index = 0; index < length;) { int max = Math.min(MAX_AT_ONCE, length - index); locateMatches(javaProject, possibleMatches, index, max); index += max; } this.patternLocator.clear(); }
From source file:org.hibernate.eclipse.jdt.ui.wizards.NewHibernateMappingFileWizard.java
License:Open Source License
public void init(IWorkbench workbench, IStructuredSelection selection) { Set<IJavaElement> filteredElements = new HashSet<IJavaElement>(); Object[] elements = selection.toArray(); for (int i = 0; i < elements.length; i++) { if (elements[i] instanceof JavaProject) { JavaProject project = (JavaProject) elements[i]; try { IPackageFragmentRoot[] roots = project.getPackageFragmentRoots(); for (int j = 0; j < roots.length; j++) { if (!roots[j].isArchive()) { IJavaElement[] rootChildren = roots[j].getChildren(); for (int k = 0; k < rootChildren.length; k++) { if (rootChildren[k] instanceof IPackageFragment) { IPackageFragment pkg = (IPackageFragment) rootChildren[k]; try { if (pkg.containsJavaResources()) filteredElements.add(rootChildren[k]); } catch (JavaModelException e1) { e1.printStackTrace(); }// w ww . j a v a 2 s . c o m } } } } } catch (JavaModelException e) { e.printStackTrace(); } } else if (elements[i] instanceof IPackageFragmentRoot) { IPackageFragmentRoot root = (IPackageFragmentRoot) elements[i]; if (!root.isArchive()) { try { IJavaElement[] rootChildren = root.getChildren(); for (int k = 0; k < rootChildren.length; k++) { if (rootChildren[k] instanceof IPackageFragment) { IPackageFragment pkg = (IPackageFragment) rootChildren[k]; try { if (pkg.containsJavaResources()) filteredElements.add(rootChildren[k]); } catch (JavaModelException e1) { e1.printStackTrace(); } } } } catch (JavaModelException e) { e.printStackTrace(); } } } else if (elements[i] instanceof ICompilationUnit) { ICompilationUnit cu = (ICompilationUnit) elements[i]; IType[] types; try { types = cu.getTypes(); //remove java extension. //String typeName = cu.getElementName().substring(0, cu.getElementName().length() - 5); for (int j = 0; j < types.length; j++) { //if (types[j].getElementName().equals(typeName)){ filteredElements.add(types[j]); // break; //} } } catch (JavaModelException e) { e.printStackTrace(); } } else if (elements[i] instanceof IJavaElement) { filteredElements.add((IJavaElement) elements[i]); } } this.selection = new StructuredSelection(filteredElements.toArray()); }
From source file:org.jboss.tools.windup.model.domain.ConfigurationResourceUtil.java
License:Open Source License
public static IPackageFragment[] computePackages(ConfigurationElement configuration) { List<IPackageFragment> packages = Lists.newArrayList(); List<IPackageFragment> currentFragments = Lists.newArrayList(getCurrentPackages(configuration)); for (IProject project : getCurrentProjects(configuration)) { JavaProject javaProject = (JavaProject) JavaCore.create(project); try {// w w w. j a v a 2 s . com for (IPackageFragmentRoot root : javaProject.getPackageFragmentRoots()) { if (root.getKind() == IPackageFragmentRoot.K_SOURCE) { for (Object obj : root.getChildren()) { if (obj instanceof IPackageFragment) { IPackageFragment fragment = (IPackageFragment) obj; if (fragment.hasChildren() && !currentFragments.contains(fragment)) { packages.add(fragment); } } } } } } catch (JavaModelException e) { Activator.log(e); } } return packages.stream().toArray(IPackageFragment[]::new); }