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.universaal.tools.newwizard.plugin.wizards.NewItemWizard.java
License:Apache License
/** * This method is called when 'Finish' button is pressed in the wizard. We * will create an operation and run it using wizard as execution context. *//*from w ww . ja v a 2s.c o m*/ public boolean performFinish() { // get info from the wizard final IMWVersion mwVersion = page.getMWVersion(); final String clsname = page.getTextClass().getText(); final int clstype = page.getDropClass().getSelectionIndex(); // this job performs the creation of the item Job job = new WorkspaceJob(Messages.getString("Item.1")) { //$NON-NLS-1$ public IStatus runInWorkspace(IProgressMonitor monitor) { try { // Get the place to put the new file (or create it) IPackageFragmentRoot root = page.getPackageFragmentRoot(); IPackageFragment pack = page.getPackageFragment(); if (pack == null) { root.getPackageFragment(""); //$NON-NLS-1$ } if (!pack.exists()) { String packName = pack.getElementName(); pack = root.createPackageFragment(packName, true, monitor); } else { monitor.worked(1); } IResource resource = pack.getCorrespondingResource(); IContainer container = (IContainer) resource; if (!mwVersion.createNewFile(container, pack.getElementName(), clstype, clsname, monitor)) { MessageDialog.openError(getShell(), Messages.getString("Item.2"), //$NON-NLS-1$ Messages.getString("Item.3")); //$NON-NLS-1$ } // Now update dependencies in pom IFile pom = pack.getJavaProject().getProject().getFile("pom.xml"); //$NON-NLS-1$ if (pom.exists()) { // Modify the pom to add dependencies mwVersion.modifyPOMFile(pom, clstype, monitor); } else { MessageDialog.openError(getShell(), Messages.getString("Item.4"), //$NON-NLS-1$ Messages.getString("Item.5")); //$NON-NLS-1$ } } catch (Exception e) { throw new OperationCanceledException(e.getMessage()); } return Status.OK_STATUS; } }; // Listener in case job fails job.addJobChangeListener(new JobChangeAdapter() { public void done(IJobChangeEvent event) { final IStatus result = event.getResult(); if (!result.isOK()) { Display.getDefault().asyncExec(new Runnable() { public void run() { MessageDialog.openError(getShell(), Messages.getString("Item.6"), result //$NON-NLS-1$ .getMessage()); } }); } } }); // Because we dont need to monitor changes in workspace, // we directly perform the job job.setRule(ResourcesPlugin.getWorkspace().getRoot()); job.schedule(); return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.axis2.ui.wizard.Axis2ServiceCreationWizard.java
License:Open Source License
public boolean performFinish() { IFile axis2GenServiceXML = null;/* w ww .j a va2 s. c om*/ try { IProject project = createNewProject(); IFolder sourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); JavaUtils.addJavaSupportAndSourceFolder(project, sourceFolder); File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("service/axis2"); createPOM(pomfile); getModel().addToWorkingSet(project); ProjectUtils.addNatureToProject(project, false, AXIS2_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] { JDT_BUILD_COMMAND }, new String[] { AXIS2_PROJECT_NATURE, JDT_PROJECT_NATURE }); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); if (getModel().getSelectedOption().equals("import.Axis2")) { //TODO: import AAR } else if (getModel().getSelectedOption().equals("new.Axis2")) { String className = axis2Model.getServiceClass(); String packageName = axis2Model.getPackageName(); IJavaProject javaProject = JavaCore.create(project); IFolder resourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "resources"); if (!resourceFolder.exists()) { resourceFolder.create(false, true, null); } IFolder metaFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "resources", "META-INF"); if (!metaFolder.exists()) { metaFolder.create(false, true, null); } IFile serviceXML = metaFolder.getFile("services.xml"); createServiceXML(serviceXML, className, packageName.concat(".").concat(className)); IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(sourceFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); StringBuffer buffer = new StringBuffer(); if (!packageName.equalsIgnoreCase("")) { buffer.append("package " + packageName + ";\n"); buffer.append("\n"); } buffer.append("public class " + className + "{\n\n}"); ICompilationUnit compilationUnit = sourcePackage.createCompilationUnit(className + ".java", buffer.toString(), false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); IPath path = compilationUnit.getResource().getProjectRelativePath(); IFile sourceFile = project.getFile(path); try { refreshDistProjects(); IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(), sourceFile); } catch (Exception e) { log.error("Cannot open file in editor", e); } } else if (getModel().getSelectedOption().equals("import.Axis2wsdl")) { ProgressMonitorDialog progressMonitorDialog = new ProgressMonitorDialog(getShell()); IFolder mainFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main"); dataModel.setSourceFolder("java"); dataModel.setGeneratedCodeLocation(mainFolder.getRawLocation().toPortableString()); dataModel.setSelectedProject(project); progressMonitorDialog.create(); progressMonitorDialog.open(); progressMonitorDialog.run(false, false, new CodegenJob()); IFolder resourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "resources"); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); IFolder metaFolder = resourceFolder.getFolder("META-INF"); if (!metaFolder.exists()) { metaFolder.create(false, true, null); } axis2GenServiceXML = resourceFolder.getFile("services.xml"); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); if (axis2GenServiceXML.exists()) { IFile metaServiceXML = metaFolder.getFile("services.xml"); FileUtils.copy(axis2GenServiceXML.getLocation().toFile(), metaServiceXML.getLocation().toFile()); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); //axis2GenServiceXML.delete(true, new NullProgressMonitor()); } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); refreshDistProjects(); } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); } catch (CoreException e) { log.error("CoreException has occurred", e); } catch (IOException e) { log.error("I/O error has occurred", e); } catch (InvocationTargetException e) { log.error("An error occurred while generating codes", e.getTargetException()); } catch (Exception e) { log.error("An unexpected error has occurred", e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.carbon.ui.bundle.ui.wizard.CarbonUIbundleWizard.java
License:Open Source License
public boolean performFinish() { try {/*from www . ja v a 2s .com*/ if (uibundleModel.getSelectedOption().equals("new.uibundle")) { project = createNewProject(); IFolder srcFolder = ProjectUtils.getWorkspaceFolder(project, "src"); JavaUtils.addJavaSupportAndSourceFolder(project, srcFolder); ProjectUtils.createFolder(srcFolder); if (uibundleModel.isActivatorRequired()) { String className = uibundleModel.getActivatorClassName(); if (".Activator".equals(className)) { className = "Activator"; uibundleModel.setActivatorClassName(className); } className = getClassName(uibundleModel.getActivatorClassName()); String packageName = getPackageName(uibundleModel.getActivatorClassName()); IJavaProject iJavaProject = JavaCore.create(project); IPackageFragmentRoot root = iJavaProject.getPackageFragmentRoot(srcFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); String template = CarbonUIbudleTemplate.createActivatorClassTemplete(packageName, className); sourcePackage.createCompilationUnit(className + ".java", template, false, null); } /*create Meta INF Folder data*/ IFolder metaInf = this.createWorkspaceFolder("META-INF"); String componentXmlSource = CarbonUIbudleTemplate.createComponentXMLTemplate(); createProjectFile(metaInf, "component.xml", componentXmlSource); String metaInfSource = CarbonUIbudleTemplate.createManifestFileTemplate(uibundleModel); createProjectFile(metaInf, "MANIFEST.MF", metaInfSource); IFolder webDir = createDirectoryhierarchy(uibundleModel.getDeployPath()); IFolder cssDir = webDir.getFolder("css"); cssDir.create(true, true, new NullProgressMonitor()); IFolder imgDir = webDir.getFolder("images"); imgDir.create(true, true, new NullProgressMonitor()); IFolder jsDir = webDir.getFolder("js"); jsDir.create(true, true, new NullProgressMonitor()); copyResourceFiles(cssDir.getLocation().toFile(), "menu.css"); copyResourceFiles(webDir.getLocation().toFile(), "index.jsp"); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); } else { project = uibundleModel.getCarbonUIproject(); } File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("bundle"); if (!pomfile.exists()) { createPOM(pomfile); } addDependancies(project); MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); Dependency dependencies = new Dependency(); dependencies.setGroupId("org.eclipse.osgi"); dependencies.setArtifactId("org.eclipse.osgi"); dependencies.setVersion("3.7.0.v20110613"); MavenUtils.addMavenDependency(mavenProject, dependencies); mavenProject.getBuild().setSourceDirectory("src"); MavenUtils.saveMavenProject(mavenProject, pomfile); boolean pluginExists = MavenUtils.checkOldPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4"); if (pluginExists) { project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); return true; } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); ProjectUtils.addNatureToProject(project, false, CARBON_UI_BUNDLE_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] { JDT_BUILD_COMMAND }, new String[] { CARBON_UI_BUNDLE_PROJECT_NATURE, JDT_PROJECT_NATURE }); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); try { refreshDistProjects(); IFile activatorClassForProject = getManifestFileForProject(project); IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(), activatorClassForProject); } catch (Exception e) { log.error("Cannot open file in editor", e); } } catch (CoreException e) { log.error("CoreException has occurred", e); } catch (Exception e) { log.error("An unexpected error has occurred", e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.ds.validator.ui.wizard.DataServiceValidatorCreationWizard.java
License:Open Source License
public boolean performFinish() { try {//from www . j a v a 2 s . co m if (dsValidatorModel.getSelectedOption().equals("new.validator")) { project = createNewProject(); IFolder srcFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); JavaUtils.addJavaSupportAndSourceFolder(project, srcFolder); /*create the new Java project*/ String className = dsValidatorModel.getValidatorClass(); String packageName = dsValidatorModel.getValidatorClassPackage(); IJavaProject iJavaProject = JavaCore.create(project); IPackageFragmentRoot root = iJavaProject.getPackageFragmentRoot(srcFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); /*get the validator class template*/ String template = DataServiceValidatorClassTemplate.getClassTemplete(packageName, className); ICompilationUnit cu = sourcePackage.createCompilationUnit(className + ".java", template, false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); try { IEditorPart javaEditor = JavaUI.openInEditor(cu); JavaUI.revealInEditor(javaEditor, (IJavaElement) cu); } catch (Exception e) { /* ignore */} } else { project = dsValidatorModel.getValidatorProject(); } File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("bundle"); if (!pomfile.exists()) { createPOM(pomfile); addDependancies(project); } MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); boolean pluginExists = MavenUtils.checkOldPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4"); if (pluginExists) { project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); return true; } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); ProjectUtils.addNatureToProject(project, false, DS_VALIDATOR_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] { JDT_BUILD_COMMAND }, new String[] { DS_VALIDATOR_PROJECT_NATURE, JDT_PROJECT_NATURE }); getModel().addToWorkingSet(project); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); refreshDistProjects(); } catch (CoreException e) { log.error(e); } catch (Exception e) { log.error(e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.jaxrs.ui.wizard.JaxrsClassWizard.java
License:Open Source License
public boolean performFinish() { String id = ""; String address = ""; String serviceClass = ""; try {/*from ww w. ja v a2 s . c om*/ IProject project = getSelectedProject(); IFolder sourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); IFolder webINF = ProjectUtils.getWorkspaceFolder(project, "src", "main", "webapp", "WEB-INF"); IFile cxfServletXML = webINF.getFile("cxf-servlet.xml"); IJavaProject javaProject = JavaCore.create(project); IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(sourceFolder); if (classWizardPage.getIsCreateIfClass()) { String ifPkg = classWizardPage.getIfPkg(); String ifClass = classWizardPage.getIfClass(); IPackageFragment ifSourcePackage = root.getPackageFragment(ifPkg); if (!ifSourcePackage.exists()) { ifSourcePackage = root.createPackageFragment(ifPkg, false, null); } ICompilationUnit compilationUnit = ifSourcePackage.createCompilationUnit(ifClass + ".java", JaxUtil.getServiceClassSource(ifPkg, ifClass, classWizardPage.isCreateStubs()), false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); List superInterfaces = classWizardPage.getSuperInterfaces(); superInterfaces.add(compilationUnit.getTypes()[0].getFullyQualifiedName()); classWizardPage.setSuperInterfaces(superInterfaces, false); id = compilationUnit.getTypes()[0].getElementName(); id = Character.toLowerCase(id.charAt(0)) + id.substring(1); serviceClass = ""; address = "/" + compilationUnit.getTypes()[0].getElementName(); } classWizardPage.createType(new NullProgressMonitor()); IType classSource = classWizardPage.getCreatedType(); ICompilationUnit unit = classSource.getCompilationUnit(); unit.getJavaProject().getProject().refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); unit.becomeWorkingCopy(new NullProgressMonitor()); unit.createImport("javax.ws.rs.Path", null, new NullProgressMonitor()); String source = unit.getSource(); String searchFor = "public class " + classSource.getTypeQualifiedName(); int pos = source.indexOf(searchFor); source = (source.substring(0, pos) + "@Path(\"/" + "\")" + System.getProperty("line.separator") + source.substring(pos)); IBuffer workingCopyBuffer = unit.getBuffer(); workingCopyBuffer.setContents(source); unit.commitWorkingCopy(false, new NullProgressMonitor()); try { if (!classWizardPage.getIsCreateIfClass()) { id = unit.getTypes()[0].getElementName(); id = Character.toLowerCase(id.charAt(0)) + id.substring(1); serviceClass = unit.getTypes()[0].getFullyQualifiedName(); address = "/" + unit.getTypes()[0].getElementName(); } JaxUtil.CxfServlet cxfServlet = new JaxUtil.CxfServlet(); cxfServlet.deserialize(cxfServletXML); address = address.replaceAll("([A-Z])", "_$1"); // split CamelCase address = address.replaceAll("^/_", "/"); address = address.toLowerCase(); String beanClass = unit.getTypes()[0].getFullyQualifiedName(); cxfServlet.addServer(id, serviceClass, address, beanClass); String content = cxfServlet.toString().replaceAll("\\ xmlns=\"\"", ""); cxfServletXML.setContents(new ByteArrayInputStream(content.getBytes()), IResource.FORCE, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); try { IEditorPart javaEditor = JavaUI.openInEditor(unit); JavaUI.revealInEditor(javaEditor, (IJavaElement) unit); } catch (Exception e) {/* ignore */ log.error("Exception has occurred", e); } } catch (Exception e) { log.error("cannot update cxf-servlet.xml", e); } } catch (CoreException e) { log.error("CoreException has occurred", e); } catch (InterruptedException e) { log.error("An InterruptedException has occurred", e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.jaxrs.ui.wizard.JaxrsCreationWizard.java
License:Open Source License
private ICompilationUnit createServiceClass(IProject project, CxfServlet cxfServlet, String packageName, String className) throws CoreException { IJavaProject javaProject = JavaCore.create(project); IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(sourceFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); StringBuffer buffer = new StringBuffer(); if (!packageName.equalsIgnoreCase("")) { buffer.append("package " + packageName + ";\n"); buffer.append("\n"); }/*from w w w.j ava2s . co m*/ buffer.append("import javax.ws.rs.*;\n"); buffer.append("\n"); buffer.append("@Path(\"/\")\n" + "public class " + className + " {\n\n"); buffer.append("\n}"); ICompilationUnit cu = sourcePackage.createCompilationUnit(className + ".java", buffer.toString(), false, null); String address = "/" + cu.getTypes()[0].getElementName(); address = address.replaceAll("([A-Z])", "_$1"); // split CamelCase address = address.replaceAll("^/_", "/"); address = address.toLowerCase(); String beanClass = cu.getTypes()[0].getFullyQualifiedName(); cxfServlet.addServer(cu.getTypes()[0].getElementName(), null, address, beanClass); return cu; }
From source file:org.wso2.developerstudio.eclipse.artifact.jaxws.ui.wizard.JaxwsClassWizard.java
License:Open Source License
public boolean performFinish() { try {/*from w ww . j av a2 s . co m*/ String ifPkg = jaxwsClassWizardPage.getIfPkg(); String ifClass = jaxwsClassWizardPage.getIfClass(); IProject project = getSelectedProject(); IFolder sourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); IFolder webINF = ProjectUtils.getWorkspaceFolder(project, "src", "main", "webapp", "WEB-INF"); IFile cxfServletXML = webINF.getFile("cxf-servlet.xml"); IJavaProject javaProject = JavaCore.create(project); IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(sourceFolder); String id = ""; String serviceClass = null; String address = ""; List superInterfaces = jaxwsClassWizardPage.getSuperInterfaces(); if (jaxwsClassWizardPage.isCreateServiceInterface()) { IPackageFragment ifSourcePackage = root.getPackageFragment(ifPkg); if (!ifSourcePackage.exists()) { ifSourcePackage = root.createPackageFragment(ifPkg, false, null); } ICompilationUnit cu = ifSourcePackage.createCompilationUnit(ifClass + ".java", JaxUtil.getServiceClassSource(ifPkg, ifClass, jaxwsClassWizardPage.isCreateStubs()), false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); superInterfaces.add(cu.getTypes()[0].getFullyQualifiedName()); id = cu.getTypes()[0].getElementName(); id = Character.toLowerCase(id.charAt(0)) + id.substring(1); serviceClass = cu.getTypes()[0].getFullyQualifiedName(); address = "/" + cu.getTypes()[0].getElementName(); } jaxwsClassWizardPage.setSuperInterfaces(superInterfaces, false); jaxwsClassWizardPage.createType(new NullProgressMonitor()); IType classSource = jaxwsClassWizardPage.getCreatedType(); ICompilationUnit unit = classSource.getCompilationUnit(); unit.becomeWorkingCopy(new NullProgressMonitor()); unit.createImport("javax.jws.WebService", null, new NullProgressMonitor()); String source = unit.getSource(); String searchFor = "public class " + classSource.getTypeQualifiedName(); int pos = source.indexOf(searchFor); source = (source.substring(0, pos) + "@WebService(serviceName = \"" + classSource.getTypeQualifiedName() + "\")" + System.getProperty("line.separator") + source.substring(pos)); IBuffer workingCopyBuffer = unit.getBuffer(); workingCopyBuffer.setContents(source); unit.commitWorkingCopy(false, new NullProgressMonitor()); unit.getJavaProject().getProject().refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); if (!jaxwsClassWizardPage.isCreateServiceInterface()) { id = classSource.getElementName(); id = Character.toLowerCase(id.charAt(0)) + id.substring(1); //serviceClass = classSource.getFullyQualifiedName(); address = "/" + classSource.getElementName(); } JaxUtil.CxfServlet cxfServlet = new JaxUtil.CxfServlet(); try { cxfServlet = new JaxUtil.CxfServlet(); cxfServlet.deserialize(cxfServletXML); address = address.replaceAll("([A-Z])", "_$1"); // split CamelCase address = address.replaceAll("^/_", "/"); address = address.toLowerCase(); String beanClass = unit.getTypes()[0].getFullyQualifiedName(); cxfServlet.addServer(id, serviceClass, address, beanClass); /*to drop empty NS, due to https://issues.apache.org/jira/browse/AXIOM-97 (was fixed in AXIOM 1.2.10)*/ String content = cxfServlet.toString().replaceAll("xmlns=\"\"", ""); cxfServletXML.setContents(new ByteArrayInputStream(content.getBytes()), IResource.FORCE, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); IEditorPart javaEditor = JavaUI.openInEditor(unit); JavaUI.revealInEditor(javaEditor, (IJavaElement) unit); } catch (Exception e) { log.error("cannot update cxf-servlet.xml", e); } } catch (CoreException e) { log.error("CoreException has occurred", e); } catch (InterruptedException e) { log.error("An InterruptedException has occurred", e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.jaxws.ui.wizard.JaxwsServiceCreationWizard.java
License:Open Source License
private ICompilationUnit createServiceClass(IProject project, CxfServlet cxfServlet, String packageName, String className) throws CoreException { IJavaProject javaProject = JavaCore.create(project); IPackageFragmentRoot root = javaProject.getPackageFragmentRoot(sourceFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); StringBuffer buffer = new StringBuffer(); if (!packageName.equalsIgnoreCase("")) { buffer.append("package " + packageName + ";\n"); buffer.append("\n"); }/*from w w w. j a v a 2 s .c o m*/ buffer.append("import javax.jws.WebService;\n"); buffer.append("import javax.jws.WebMethod;\n"); buffer.append("import javax.jws.WebParam;\n"); buffer.append("\n"); buffer.append("@WebService(serviceName = \"" + className + "\")\n" + "public class " + className + "{\n\n"); buffer.append("\t/** This is a sample web service operation */\n"); buffer.append("\t@WebMethod(operationName = \"hello\")\n"); buffer.append("\tpublic String hello(@WebParam(name = \"name\") String txt) {\n"); buffer.append("\t\treturn \"Hello \" + txt + \" !\";\n"); buffer.append("\t}\n\n"); buffer.append("\n}"); ICompilationUnit cu = sourcePackage.createCompilationUnit(className + ".java", buffer.toString(), false, null); String address = "/" + cu.getTypes()[0].getElementName(); address = address.replaceAll("([A-Z])", "_$1"); // split CamelCase address = address.replaceAll("^/_", "/"); address = address.toLowerCase(); String beanClass = cu.getTypes()[0].getFullyQualifiedName(); cxfServlet.addServer(cu.getTypes()[0].getElementName(), null, address, beanClass); return cu; }
From source file:org.wso2.developerstudio.eclipse.artifact.mediator.ui.wizard.CustomMediatorCreationWizard.java
License:Open Source License
public boolean performFinish() { try {//from w w w .jav a 2 s . c o m if (customMediatorModel.getSelectedOption().equals("new.mediator")) { project = createNewProject(); IFolder srcFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); JavaUtils.addJavaSupportAndSourceFolder(project, srcFolder); /*create the new Java project*/ String className = customMediatorModel.getMediatorClassName(); String packageName = customMediatorModel.getMediatorClassPackageName(); IJavaProject iJavaProject = JavaCore.create(project); IPackageFragmentRoot root = iJavaProject.getPackageFragmentRoot(srcFolder); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); /*get the Mediator class template*/ String template = CustomMediatorClassTemplate.getClassTemplete(packageName, className); ICompilationUnit cu = sourcePackage.createCompilationUnit(className + ".java", template, false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); try { IEditorPart javaEditor = JavaUI.openInEditor(cu); JavaUI.revealInEditor(javaEditor, (IJavaElement) cu); } catch (Exception e) { log.error(e); } } else { project = customMediatorModel.getMediatorProject(); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); } File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("bundle"); if (!pomfile.exists()) { createPOM(pomfile); addDependancies(project); } MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); boolean pluginExists = MavenUtils.checkOldPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4"); if (!pluginExists) { Plugin plugin = MavenUtils.createPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4", true); Xpp3Dom configurationNode = MavenUtils.createMainConfigurationNode(plugin); Xpp3Dom instructionNode = MavenUtils.createXpp3Node("instructions"); Xpp3Dom bundleSymbolicNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-SymbolicName"); Xpp3Dom bundleNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-Name"); ; Xpp3Dom exportPackageNode = MavenUtils.createXpp3Node(instructionNode, "Export-Package"); Xpp3Dom dynamicImportNode = MavenUtils.createXpp3Node(instructionNode, "DynamicImport-Package"); bundleSymbolicNameNode.setValue(project.getName()); bundleNameNode.setValue(project.getName()); if (customMediatorModel.getMediatorClassPackageName() != null && !customMediatorModel.getMediatorClassPackageName().trim().isEmpty()) { exportPackageNode.setValue(customMediatorModel.getMediatorClassPackageName()); } else { IJavaProject javaProject = JavaCore.create(project); if (null != javaProject) { StringBuffer sb = new StringBuffer(); for (IPackageFragment pkg : javaProject.getPackageFragments()) { if (pkg.getKind() == IPackageFragmentRoot.K_SOURCE) { if (pkg.hasChildren()) { sb.append(pkg.getElementName()).append(","); } } } exportPackageNode.setValue(sb.toString().replaceAll(",$", "")); } } dynamicImportNode.setValue("*"); configurationNode.addChild(instructionNode); MavenUtils.saveMavenProject(mavenProject, pomfile); } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); ProjectUtils.addNatureToProject(project, false, MEDIATOR_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] { JDT_BUILD_COMMAND }, new String[] { MEDIATOR_PROJECT_NATURE, JDT_PROJECT_NATURE }); customMediatorModel.addToWorkingSet(project); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); refreshDistProjects(); } catch (CoreException e) { log.error(e); } catch (Exception e) { log.error(e); } return true; }
From source file:rabbit.tracking.internal.trackers.JavaTrackerTest.java
License:Apache License
@BeforeClass public static void beforeClass() throws Exception { new OpenJavaPerspectiveAction().run(); // Creates the project: IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); IProject proj = root.getProject(System.currentTimeMillis() + ""); JavaCapabilityConfigurationPage.createProject(proj, (URI) null, null); project = JavaCore.create(proj);//from ww w . ja va2s . com JavaCapabilityConfigurationPage page = new JavaCapabilityConfigurationPage(); page.init(project, null, null, false); page.configureJavaProject(null); // Creates the package: IPackageFragmentRoot src = project.getAllPackageFragmentRoots()[0]; pkg = src.createPackageFragment("pkg", true, null); // Creates the class: String className = "Program"; StringBuilder builder = new StringBuilder(); builder.append(format("package %s;%n", pkg.getElementName())); builder.append(format("public class %s {%n", className)); builder.append(format("}%n")); String content = builder.toString(); unit = pkg.createCompilationUnit(className + ".java", content, true, null); unit.open(null); PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false); }