Example usage for org.eclipse.jdt.core IJavaProject getPackageFragmentRoot

List of usage examples for org.eclipse.jdt.core IJavaProject getPackageFragmentRoot

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaProject getPackageFragmentRoot.

Prototype

IPackageFragmentRoot getPackageFragmentRoot(IResource resource);

Source Link

Document

Returns a package fragment root for the given resource, which must either be a folder representing the top of a package hierarchy, or a ZIP archive (e.g.

Usage

From source file:org.apache.openjpa.eclipse.EnhancerBuilderTest.java

License:Apache License

protected void setUp() throws Exception {

    IWorkspace workspace = null;//from  ww w .  j a va  2s . c  om
    try {
        workspace = ResourcesPlugin.getWorkspace();
    } catch (IllegalStateException e) {
        fail("workspace is closed, you are most probably running this as a standalone JUnit Test instead of as an Eclipse PDE Plug-In Test?!");
    }

    // create project
    project = workspace.getRoot().getProject(PROJECT_NAME);
    project.create(null);
    project.open(null);

    // create source and output folders
    IFolder srcFolder = project.getFolder("src");
    srcFolder.create(true, true, null);
    IFolder binFolder = project.getFolder("bin");
    binFolder.create(true, true, null);

    IProjectDescription desc = project.getDescription();

    // Set the Java and OpenJPA natures on the project, 
    // so that the builders is added and initialized
    desc.setNatureIds(new String[] { JavaCore.NATURE_ID, OpenJPANature.NATURE_ID });
    project.setDescription(desc, null);

    // Declare Java source and output folders
    IJavaProject javaProject = JavaCore.create(project);
    javaProject.setOutputLocation(binFolder.getFullPath(), null);
    IClasspathEntry cpEntry = JavaCore.newSourceEntry(srcFolder.getFullPath());
    javaProject.setRawClasspath(new IClasspathEntry[] { cpEntry }, null);

    // create a Java package and a class
    IPackageFragmentRoot pkgFragmentRoot = javaProject.getPackageFragmentRoot(srcFolder);
    IPackageFragment pkgFragment = pkgFragmentRoot.createPackageFragment(TESTCLASS_PACKAGE, true, null);

    // and copy the same classes already used in the PCEnhancerHelperTest
    copyTestClassToPackage(pkgFragment, "TestEntity.java");
    // copyTestClassToPackage(pkgFragment, "NotToEnhance.java");
    javaProject.save(null, true);
}

From source file:org.apache.openjpa.eclipse.util.ClasspathHelperTest.java

License:Apache License

protected void setUp() throws Exception {

    IWorkspace workspace = null;/*from w w  w . ja v  a 2 s  .c om*/
    try {
        workspace = ResourcesPlugin.getWorkspace();
    } catch (IllegalStateException e) {
        fail("workspace is closed, you are most probably running this as a standalone JUnit Test instead of as an Eclipse PDE Plug-In Test?!");
    }

    // create project
    project = workspace.getRoot().getProject(PROJECT_NAME);
    project.create(null);
    project.open(null);

    // create source and output folders
    IFolder srcFolder = project.getFolder("src");
    srcFolder.create(true, true, null);
    IFolder binFolder = project.getFolder("bin");
    binFolder.create(true, true, null);

    // Set the Java nature on the project, so that the builder is added and initialized
    IProjectDescription desc = workspace.newProjectDescription(PROJECT_NAME);
    desc.setNatureIds(new String[] { JavaCore.NATURE_ID });
    project.setDescription(desc, null);

    // Declare Java source and output folders
    IJavaProject javaProject = JavaCore.create(project);
    javaProject.setOutputLocation(binFolder.getFullPath(), null);
    IClasspathEntry cpEntry = JavaCore.newSourceEntry(srcFolder.getFullPath());
    javaProject.setRawClasspath(new IClasspathEntry[] { cpEntry }, null);

    // create a Java package and a class
    IPackageFragmentRoot pkgFragmentRoot = javaProject.getPackageFragmentRoot(srcFolder);
    IPackageFragment pkgFragment = pkgFragmentRoot.createPackageFragment(TESTCLASS_PACKAGE, true, null);
    InputStream is = Thread.currentThread().getContextClassLoader()
            .getResourceAsStream("/com/odcgroup/classpath/demo/tests/resources/testclasscontent.txt");
    String contents = IOUtils.toString(is);
    pkgFragment.createCompilationUnit(TESTCLASS_NAME + ".java", contents, true, null);
    javaProject.save(null, true);
}

From source file:org.autorefactor.refactoring.rules.JavaCoreHelper.java

License:Open Source License

private static IPackageFragmentRoot addSourceContainer(IJavaProject javaProject, String containerName)
        throws Exception {
    final IProject project = javaProject.getProject();
    final IFolder folder = project.getFolder(containerName);
    createFolder(folder);/* w ww.ja  va2 s  .com*/

    IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(folder);
    IClasspathEntry cpe = JavaCore.newSourceEntry(root.getPath(), EMPTY_PATHS, EMPTY_PATHS, null);
    addToClasspath(javaProject, Arrays.asList(cpe));
    return root;
}

From source file:org.bonitasoft.studio.common.repository.ClassGenerator.java

License:Open Source License

private static IType generateAbstractClass(String packageName, String className, String superClassName,
        SourceRepositoryStore sourceStore, IProgressMonitor progressMonitor) throws Exception {

    final IJavaProject javaProject = RepositoryManager.getInstance().getCurrentRepository().getJavaProject();

    NewClassWizardPage classWizard = new NewClassWizardPage();
    classWizard.setSuperClass(superClassName, false);
    classWizard.setAddComments(true, false);
    classWizard.setModifiers(classWizard.F_PUBLIC | classWizard.F_ABSTRACT, false);
    classWizard.setTypeName(className, false);
    classWizard.setMethodStubSelection(false, false, false, false);
    IPackageFragmentRoot packageFragmentRoot = null;
    IResource srcFolder = sourceStore.getResource();
    packageFragmentRoot = javaProject.getPackageFragmentRoot(srcFolder);
    classWizard.setPackageFragmentRoot(packageFragmentRoot, false);
    IPackageFragment packageFragment = packageFragmentRoot
            .getPackageFragment(packageName == null ? "" : packageName);
    if (!packageFragment.exists()) {
        packageFragment = packageFragmentRoot.createPackageFragment(packageName, true, progressMonitor);
    }//from ww  w  .j  ava2 s  . c  om
    classWizard.setPackageFragment(packageFragment, false);
    classWizard.createType(progressMonitor);
    return classWizard.getCreatedType();
}

From source file:org.bonitasoft.studio.common.repository.ClassGenerator.java

License:Open Source License

private static IType generateImplementationClass(String packageName, String className,
        SourceRepositoryStore sourceStore, IProgressMonitor progressMonitor) throws Exception {
    final IJavaProject javaProject = RepositoryManager.getInstance().getCurrentRepository().getJavaProject();

    IType abstractConnectorType = javaProject.findType(AbstractConnector.class.getName());
    IType abstractFilterType = javaProject.findType(AbstractUserFilter.class.getName());
    String abstractClassName = "Abstract" + className;
    if (packageName != null && !packageName.isEmpty()) {
        abstractClassName = packageName + "." + abstractClassName;
    }/*from w  ww  .  jav  a2  s.com*/
    IType classType = javaProject.findType(abstractClassName);
    if (classType == null) {
        throw new ClassNotFoundException(abstractClassName);
    }
    ITypeHierarchy hierarchy = classType.newTypeHierarchy(javaProject, progressMonitor);
    String tempatePattern = null;
    if (hierarchy.contains(abstractConnectorType)) {
        tempatePattern = "/**\n*The connector execution will follow the steps"
                + "\n* 1 - setInputParameters() --> the connector receives input parameters values"
                + "\n* 2 - validateInputParameters() --> the connector can validate input parameters values"
                + "\n* 3 - connect() --> the connector can establish a connection to a remote server (if necessary)"
                + "\n* 4 - executeBusinessLogic() --> execute the connector"
                + "\n* 5 - getOutputParameters() --> output are retrieved from connector"
                + "\n* 6 - disconnect() --> the connector can close connection to remote server (if any)\n*/";
    } else if (hierarchy.contains(abstractFilterType)) {
        tempatePattern = "/**\n*The actor filter execution will follow the steps"
                + "\n* 1 - setInputParameters() --> the actor filter receives input parameters values"
                + "\n* 2 - validateInputParameters() --> the actor filter can validate input parameters values"
                + "\n* 3 - filter(final String actorName) --> execute the user filter"
                + "\n* 4 - shouldAutoAssignTaskIfSingleResult() --> auto-assign the task if filter returns a single result\n*/";
    }

    NewClassWizardPage classWizard = new NewClassWizardPage();
    classWizard.enableCommentControl(true);

    ProjectTemplateStore fTemplateStore = new ProjectTemplateStore(
            RepositoryManager.getInstance().getCurrentRepository().getProject());
    try {
        fTemplateStore.load();
    } catch (IOException e) {
        BonitaStudioLog.error(e);
    }
    Template t = fTemplateStore.findTemplateById("org.eclipse.jdt.ui.text.codetemplates.typecomment");
    t.setPattern(tempatePattern);

    classWizard.setSuperClass(abstractClassName, false);
    classWizard.setAddComments(true, false);
    classWizard.setModifiers(classWizard.F_PUBLIC, false);
    classWizard.setTypeName(className, false);
    classWizard.setMethodStubSelection(false, false, false, false);
    IPackageFragmentRoot packageFragmentRoot = null;
    IResource srcFolder = sourceStore.getResource();
    packageFragmentRoot = javaProject.getPackageFragmentRoot(srcFolder);
    classWizard.setPackageFragmentRoot(packageFragmentRoot, false);
    IPackageFragment packageFragment = packageFragmentRoot
            .getPackageFragment(packageName == null ? "" : packageName);
    if (!packageFragment.exists()) {
        packageFragment = packageFragmentRoot.createPackageFragment(packageName, true, progressMonitor);
    }
    classWizard.setPackageFragment(packageFragment, false);
    classWizard.createType(progressMonitor);
    return classWizard.getCreatedType();
}

From source file:org.bonitasoft.studio.validators.ui.wizard.ValidatorWizard.java

License:Open Source License

/**
 * @param packageName//from   w w  w  .  ja v  a 2s  . com
 * @param className
 * @param baseClass
 * @param fields
 * @param progressMonitor
 * @return
 * @throws Exception
 */
private IType generateValidatorClass(String packageName, String className, Class<?> baseClass,
        IProgressMonitor progressMonitor) throws Exception {
    /*Use the NawClassWIzardPage to create the calss without pop up it*/
    NewClassWizardPage classWizard = new NewClassWizardPage();
    List<String> interfaces = new ArrayList<String>();
    progressMonitor.worked(1);
    interfaces.add(baseClass.getName());
    classWizard.setSuperInterfaces(interfaces, false);
    //   classWizard.setSuperClass(AbstractFormValidator.class.getName(), false);
    progressMonitor.worked(1);
    classWizard.setAddComments(true, false);
    classWizard.setModifiers(classWizard.F_PUBLIC, false);
    classWizard.setTypeName(className, false);
    classWizard.setMethodStubSelection(false, false, true, false);

    IResource srcFolder = validatorSourceStore.getResource();
    IJavaProject javaProject = (IJavaProject) srcFolder.getProject().getNature(JavaCore.NATURE_ID);
    IPackageFragmentRoot packageFragmentRoot = javaProject.getPackageFragmentRoot(srcFolder);
    classWizard.setPackageFragmentRoot(packageFragmentRoot, false);
    IPackageFragment packageFragment = packageFragmentRoot
            .getPackageFragment(packageName == null ? "" : packageName);
    if (!packageFragment.exists()) {
        packageFragment = packageFragmentRoot.createPackageFragment(packageName, true, progressMonitor);
    }
    classWizard.setPackageFragment(packageFragment, false);
    progressMonitor.worked(1);
    classWizard.createType(progressMonitor);

    IType classType = classWizard.getCreatedType();

    /*modify the generated class to implement the displayname method*/
    progressMonitor.worked(1);
    //      IMethod displayNameMethod = classType.getMethod("getDisplayName", new String[]{});
    //      if(displayNameMethod!=null && displayNameMethod.exists()){
    //         displayNameMethod.delete(true, progressMonitor);
    //      }
    //
    //      String contents = generateDisplayNameContent(displayName);
    //      classType.createMethod(contents, null, true, progressMonitor);

    return classType;
}

From source file:org.cubictest.exporters.selenium.ui.CustomStepWizard.java

License:Open Source License

@Override
public void addPages() {
    classWizard = new NewClassWizardPage();
    IJavaProject javaProject = JavaCore.create(project);
    IResource pageFragmentRoot = null;/* w w w .j  a  v a  2  s  .com*/
    try {
        for (IJavaElement element : javaProject.getChildren())
            if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT) {
                pageFragmentRoot = element.getResource();
                break;
            }
    } catch (JavaModelException e) {
        Logger.error(e.getMessage(), e);
    }
    if (pageFragmentRoot != null)
        classWizard.setPackageFragmentRoot(javaProject.getPackageFragmentRoot(pageFragmentRoot), true);
    classWizard.addSuperInterface("org.cubictest.selenium.custom.ICustomTestStep");
    classWizard.setMethodStubSelection(false, false, true, true);
    addPage(classWizard);
}

From source file:org.drools.eclipse.wizard.project.NewDroolsProjectWizard.java

License:Apache License

/**
 * Create the sample rule launcher file.
 *///from www.j ava 2  s .  c o  m
private void createRuleSampleLauncher(IJavaProject project) throws JavaModelException, IOException {

    String s;
    if (runtimePage.getGenerationType() == NewDroolsProjectRuntimeWizardPage.DROOLS4) {
        s = "org/drools/eclipse/wizard/project/RuleLauncherSample_4.java.template";
    } else {
        s = "org/drools/eclipse/wizard/project/RuleLauncherSample.java.template";
    }
    IFolder folder = project.getProject().getFolder("src/main/java");
    IPackageFragmentRoot packageFragmentRoot = project.getPackageFragmentRoot(folder);
    IPackageFragment packageFragment = packageFragmentRoot.createPackageFragment("com.sample", true, null);
    InputStream inputstream = getClass().getClassLoader().getResourceAsStream(s);
    packageFragment.createCompilationUnit("DroolsTest.java", new String(readStream(inputstream)), true, null);
}

From source file:org.drools.eclipse.wizard.project.NewDroolsProjectWizard.java

License:Apache License

/**
 * Create the sample decision table launcher file.
 *//*from   w  ww .j  a  v  a  2  s  .  c o  m*/
private void createDecisionTableSampleLauncher(IJavaProject project) throws JavaModelException, IOException {

    String s;
    if (runtimePage.getGenerationType() == NewDroolsProjectRuntimeWizardPage.DROOLS4) {
        s = "org/drools/eclipse/wizard/project/DecisionTableLauncherSample_4.java.template";
    } else {
        s = "org/drools/eclipse/wizard/project/DecisionTableLauncherSample.java.template";
    }
    IFolder folder = project.getProject().getFolder("src/main/java");
    IPackageFragmentRoot packageFragmentRoot = project.getPackageFragmentRoot(folder);
    IPackageFragment packageFragment = packageFragmentRoot.createPackageFragment("com.sample", true, null);
    InputStream inputstream = getClass().getClassLoader().getResourceAsStream(s);
    packageFragment.createCompilationUnit("DecisionTableTest.java", new String(readStream(inputstream)), true,
            null);
}

From source file:org.drools.eclipse.wizard.project.NewDroolsProjectWizard.java

License:Apache License

/**
 * Create the sample RuleFlow launcher file.
 *///from   w w w  .j  av a  2 s  .c om
private void createRuleFlowSampleLauncher(IJavaProject project) throws JavaModelException, IOException {

    String s;
    String generationType = runtimePage.getGenerationType();
    if (NewDroolsProjectRuntimeWizardPage.DROOLS4.equals(generationType)) {
        s = "org/drools/eclipse/wizard/project/RuleFlowLauncherSample_4.java.template";
    } else if (NewDroolsProjectRuntimeWizardPage.DROOLS5.equals(generationType)) {
        s = "org/drools/eclipse/wizard/project/RuleFlowLauncherSample.java.template";
    } else {
        s = "org/drools/eclipse/wizard/project/ProcessLauncherSample_bpmn.java.template";
    }
    IFolder folder = project.getProject().getFolder("src/main/java");
    IPackageFragmentRoot packageFragmentRoot = project.getPackageFragmentRoot(folder);
    IPackageFragment packageFragment = packageFragmentRoot.createPackageFragment("com.sample", true, null);
    InputStream inputstream = getClass().getClassLoader().getResourceAsStream(s);
    packageFragment.createCompilationUnit("ProcessTest.java", new String(readStream(inputstream)), true, null);
}