List of usage examples for org.eclipse.jdt.core IPackageFragmentRoot createPackageFragment
IPackageFragment createPackageFragment(String name, boolean force, IProgressMonitor monitor) throws JavaModelException;
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 www . j a v a2 s . co m*/ 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 . ja va 2 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.common.repository.filestore.SourceFileStore.java
License:Open Source License
@Override public void rename(String newQualifiedClassName) { IJavaProject project = RepositoryManager.getInstance().getCurrentRepository().getJavaProject(); String packageName = ""; String className = newQualifiedClassName; if (newQualifiedClassName.indexOf(".") != -1) { packageName = newQualifiedClassName.substring(0, newQualifiedClassName.lastIndexOf(".")); className = newQualifiedClassName.substring(newQualifiedClassName.lastIndexOf(".") + 1, newQualifiedClassName.length()); }//w w w. ja v a2 s . c o m try { final IRepositoryStore<?> store = getParentStore(); IPackageFragmentRoot root = project.findPackageFragmentRoot(store.getResource().getFullPath()); root.createPackageFragment(packageName, true, Repository.NULL_PROGRESS_MONITOR); IPackageFragment targetContainer = project .findPackageFragment(store.getResource().getFullPath().append(packageName.replace(".", "/"))); IType type = project.findType(qualifiedClassName); if (type != null) { type.getCompilationUnit().move(targetContainer, null, className + ".java", true, Repository.NULL_PROGRESS_MONITOR); qualifiedClassName = newQualifiedClassName; } } catch (Exception e) { BonitaStudioLog.error(e); } }
From source file:org.bonitasoft.studio.validators.ui.wizard.ValidatorWizard.java
License:Open Source License
/** * @param packageName/*from ww w .ja v a2 s . c o m*/ * @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.codehaus.groovy.eclipse.test.debug.GroovyLauncherShortcutTests.java
License:Apache License
/** * @param newRoot/*from w w w. ja va2s . c o m*/ * @return */ private IPackageFragment createFragment(IPackageFragmentRoot newRoot) throws Exception { return newRoot.createPackageFragment("other", true, null); }
From source file:org.codehaus.groovy.eclipse.test.wizards.NewGroovyTypeWizardTest.java
License:Open Source License
public void testExclusionFilters() throws Exception { IPackageFragmentRoot root = fProject.createSourceFolder("other", null, new IPath[] { new Path("**/*.groovy") }); IPackageFragment frag = root.createPackageFragment("p", true, null); NewClassWizardPage wizardPage = new NewClassWizardPage(); wizardPage.setPackageFragmentRoot(root, true); wizardPage.setPackageFragment(frag, true); wizardPage.setTypeName("Nuthin", true); assertStatus(IStatus.ERROR, "Cannot create Groovy type because of exclusion patterns on the source folder.", wizardPage.getStatus());/* w w w. j a v a 2s . c o m*/ }
From source file:org.drools.eclipse.wizard.project.NewDroolsProjectWizard.java
License:Apache License
/** * Create the sample rule launcher file. *///from w w w . j ava2 s . c om 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 ww w . ja va 2 s. com*/ 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 ww . ja v a 2 s. com 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); }
From source file:org.ecipse.che.plugin.testing.testng.server.TestNGTestDiscoveryTest.java
License:Open Source License
@BeforeMethod public void setUp() throws Exception { javaProject = createJavaProject("testDiscovery", "bin"); testNGTestFinder = new JavaTestFinder(); IPackageFragmentRoot packageFragmentRoot = addSourceContainer(javaProject, "src", "bin"); javaProject.setRawClasspath(getTestNgClassPath("/testDiscovery/src"), null); RegisteredProject testDiscovery = projectRegistry.getProject("testDiscovery"); Map<String, Value> attributeEntries = testDiscovery.getAttributeEntries(); attributeEntries.put("language", new ValueImpl(Collections.singletonList(JavaCore.NATURE_ID))); packageFragment = packageFragmentRoot.createPackageFragment("test", false, null); }