Example usage for org.eclipse.jdt.core IPackageFragmentRoot createPackageFragment

List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot createPackageFragment

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IPackageFragmentRoot createPackageFragment.

Prototype

IPackageFragment createPackageFragment(String name, boolean force, IProgressMonitor monitor)
        throws JavaModelException;

Source Link

Document

Creates and returns a package fragment in this root with the given dot-separated package name.

Usage

From source file:org.eclipse.che.jdt.refactoring.ccp.MoveTest.java

License:Open Source License

@Test
public void testDestination_yes_cuToOtherPackageWithMultiRootBug109145() throws Exception {
    ParticipantTesting.reset();//from   w w  w.  j a v a2  s  .  c om

    StringBuffer buf = new StringBuffer();
    buf.append("package p;\n");
    buf.append("public class Class2 {\n");
    buf.append("    Class1 c;\n");
    buf.append("}\n");
    ICompilationUnit toMove = getPackageP().createCompilationUnit("Class2.java", buf.toString(), false,
            new NullProgressMonitor());

    IPackageFragmentRoot testSrc = JavaProjectHelper.addSourceContainer(RefactoringTestSetup.getProject(),
            "testSrc");
    IPackageFragment testP = testSrc.createPackageFragment("p", true, new NullProgressMonitor());
    buf = new StringBuffer();
    buf.append("package p;\n");
    buf.append("public class Class1 {\n");
    buf.append("}\n");
    ICompilationUnit reference = testP.createCompilationUnit("Class1.java", buf.toString(), false,
            new NullProgressMonitor());
    IPackageFragment destination = testSrc.createPackageFragment("p2", true, new NullProgressMonitor());

    String[] handles = ParticipantTesting
            .createHandles(new Object[] { toMove, toMove.getTypes()[0], toMove.getResource() });
    JavaMoveProcessor processor = verifyEnabled(new IResource[] {}, new IJavaElement[] { toMove },
            createReorgQueries());

    verifyValidDestination(processor, destination);

    assertTrue("source file does not exist before moving", toMove.exists());
    RefactoringStatus status = performRefactoring(processor, true);
    assertEquals(null, status);
    assertTrue("source file exists after moving", !toMove.exists());
    ICompilationUnit newCu = destination.getCompilationUnit(toMove.getElementName());
    assertTrue("new file does not exist after moving", newCu.exists());

    buf = new StringBuffer();
    buf.append("package p2;\n");
    buf.append("\n");
    buf.append("import p.Class1;\n");
    buf.append("\n");
    buf.append("public class Class2 {\n");
    buf.append("    Class1 c;\n");
    buf.append("}\n");
    assertEqualLines(buf.toString(), newCu.getSource());

    buf = new StringBuffer();
    buf.append("package p;\n");
    buf.append("public class Class1 {\n");
    buf.append("}\n");
    assertEqualLines(buf.toString(), reference.getSource());

    ParticipantTesting.testMove(handles,
            new MoveArguments[] { new MoveArguments(destination, processor.getUpdateReferences()),
                    new MoveArguments(destination, processor.getUpdateReferences()),
                    new MoveArguments(destination.getResource(), processor.getUpdateReferences()) });
}

From source file:org.eclipse.che.jdt.search.FindReferencesTest.java

License:Open Source License

@Test
public void testFind2() throws Exception {
    IPackageFragmentRoot root = ((JavaProject) JUnitSourceSetup.getProject())
            .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");
    packageFragment.createCompilationUnit("A.java", a.toString(), true, null);
    StringBuilder b = new StringBuilder();
    b.append("package che;\n");
    b.append("import java.util.Comparator;\n");
    b.append("public class B extends A implements Comparator<A>{\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("}\n");
    packageFragment.createCompilationUnit("B.java", b.toString(), true, null);

    JavaSearchQuery query = SearchTestHelper.runTypeRefQuery("che.A");
    ISearchResult result = query.getSearchResult();
    JavaSearchResult javaResult = ((JavaSearchResult) result);
    assertThat(javaResult.getElements()).hasSize(2);
}

From source file:org.eclipse.che.jdt.search.FindReferencesTest.java

License:Open Source License

@Test(expected = SearchException.class)
public void testSearchCantFindElement() throws Exception {
    IPackageFragmentRoot root = ((JavaProject) JUnitSourceSetup.getProject())
            .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 w  w w.j av a  2  s  .c  o m*/
    SearchManager manager = new SearchManager();
    manager.findUsage(JUnitSourceSetup.getProject(), compilationUnitA.getResource().getFullPath().toOSString(),
            24);

}

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 .  j a v a2s. c  o m
    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 testFind2() throws Exception {
    IPackageFragmentRoot root = ((JavaProject) JUnitSourceSetup.getProject())
            .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");
    packageFragment.createCompilationUnit("A.java", a.toString(), true, null);
    StringBuilder b = new StringBuilder();
    b.append("package che;\n");
    b.append("import java.util.Comparator;\n");
    b.append("public class B extends A implements Comparator<A>{\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("}\n");
    packageFragment.createCompilationUnit("B.java", b.toString(), true, null);

    JavaSearchQuery query = SearchTestHelper.runTypeRefQuery("che.A");
    ISearchResult result = query.getSearchResult();
    JavaSearchResult javaResult = ((JavaSearchResult) result);
    Assertions.assertThat(javaResult.getElements()).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);//  w  ww . j a  v  a  2 s  . co m
    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.egit.ui.test.team.actions.ShowBlameActionHandlerTest.java

License:Open Source License

private IJavaProject createJavaProject(final Repository repository, final String projectName) throws Exception {
    final IJavaProject[] jProjectHolder = new IJavaProject[] { null };
    IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
        @Override/*from  w ww  .  jav  a 2  s. co m*/
        public void run(IProgressMonitor monitor) throws CoreException {
            IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
            IProject project = root.getProject(projectName);
            if (project.exists()) {
                project.delete(true, null);
                TestUtil.waitForJobs(100, 5000);
            }
            IProjectDescription desc = ResourcesPlugin.getWorkspace().newProjectDescription(projectName);
            desc.setLocation(new Path(new File(repository.getWorkTree(), projectName).getPath()));
            project.create(desc, null);
            project.open(null);
            TestUtil.waitForJobs(50, 5000);
            // Create a "bin" folder
            IFolder bin = project.getFolder(BIN_FOLDER_NAME);
            if (!bin.exists()) {
                bin.create(IResource.FORCE | IResource.DERIVED, true, null);
            }
            IPath outputLocation = bin.getFullPath();
            // Create a "src" folder
            IFolder src = project.getFolder(SRC_FOLDER_NAME);
            if (!src.exists()) {
                src.create(IResource.FORCE, true, null);
            }
            addNatureToProject(project, JavaCore.NATURE_ID);
            // Set up the IJavaProject
            IJavaProject jProject = JavaCore.create(project);
            IPackageFragmentRoot srcContainer = jProject.getPackageFragmentRoot(src);
            IClasspathEntry srcEntry = JavaCore.newSourceEntry(srcContainer.getPath());
            // Create a JRE classpath entry using the default JRE
            IClasspathEntry jreEntry = JavaRuntime.getDefaultJREContainerEntry();
            jProject.setRawClasspath(new IClasspathEntry[] { srcEntry, jreEntry }, outputLocation, true, null);
            // Create a package with a single test class
            IPackageFragment javaPackage = srcContainer.createPackageFragment(PACKAGE_NAME, true, null);
            javaPackage.createCompilationUnit(JAVA_FILE_NAME,
                    "package " + PACKAGE_NAME + ";\nclass " + JAVA_CLASS_NAME + " {\n\n}", true, null);
            jProjectHolder[0] = jProject;
        }
    };
    ResourcesPlugin.getWorkspace().run(runnable, null);
    return jProjectHolder[0];
}

From source file:org.eclipse.examples.slideshow.jdt.URLHandlingTests.java

License:Open Source License

@BeforeClass
public static void setup() throws Exception {
    // TODO This doesn't work. Need to figure out what's missing.
    IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
    IProject project = root.getProject("JavaProject");
    project.create(null);//w  w w .  j a v a2 s  .c  o m
    project.open(null);

    IProjectDescription description = project.getDescription();
    description.setNatureIds(new String[] { JavaCore.NATURE_ID });
    project.setDescription(description, null);

    IJavaProject javaProject = JavaCore.create(project);
    IPackageFragmentRoot sourceFolder = javaProject.getPackageFragmentRoot(project);
    sourceFolder.open(null);

    IPackageFragment pack = sourceFolder.createPackageFragment("org.eclipse.test", false, null);
    pack.open(null);
    String contents = "package org.eclipse.test;\npublic class Junk {\npublic static void main(String[] args) {}}";
    pack.createCompilationUnit("Junk.java", contents, false, null);

    project.build(IncrementalProjectBuilder.FULL_BUILD, null);

    //      root.accept(new IResourceVisitor() {
    //
    //         public boolean visit(IResource resource) throws CoreException {
    //            System.out.println(resource);
    //            return true;
    //         }
    //         
    //      });
}

From source file:org.eclipse.gmf.tests.setup.GenProjectBaseSetup.java

License:Open Source License

private void generateUserInterface(String fqClassName, List<GenClassifier> realizations,
        IPackageFragmentRoot projectRoot, StringBuffer exportedPackages) {
    String extendsList = buildExtendsListForUserInterface(realizations);

    String className = CodeGenUtil.getSimpleClassName(fqClassName);
    String packageName = CodeGenUtil.getPackageName(fqClassName);
    if (packageName == null) {
        packageName = "";
    }/*from w  ww  . jav  a2 s .c om*/
    String packagePrefix = packageName;
    try {
        IPackageFragment pkgFragment = projectRoot.createPackageFragment(packageName, true,
                new NullProgressMonitor());
        if (packagePrefix.length() > 0) {
            packagePrefix = "package " + packagePrefix + ";";
        }
        pkgFragment.createCompilationUnit(className + ".java",
                MessageFormat.format(INTERFACE_TEMPLATE,
                        new Object[] { packagePrefix, className, extendsList.toString() }),
                true, new NullProgressMonitor());
    } catch (JavaModelException e) {
        Assert.fail(e.getMessage());
    }
    if (packageName.length() > 0 && exportedPackages.indexOf(packageName) == -1) {
        exportedPackages.append(",");
        exportedPackages.append(packageName);
    }
}

From source file:org.eclipse.incquery.tooling.ui.wizards.NewEiqFileWizardContainerConfigurationPage.java

License:Open Source License

/**
 * Returns the name of the package set in the wizard.
 * //from   ww w .  j  a v a 2s  .  com
 * @return the name of the package
 */
public String getPackageName() {
    IPackageFragmentRoot root = getPackageFragmentRoot();

    IPackageFragment fragment = root.getPackageFragment(getPackageText());

    if (!fragment.exists()) {
        try {
            root.createPackageFragment(getPackageText(), true, new NullProgressMonitor());
        } catch (JavaModelException e) {
            IncQueryGUIPlugin.getDefault().logException("Cannot load packages " + e.getMessage(), e);
        }
    }

    return getPackageText();
}