List of usage examples for org.eclipse.jdt.core IJavaProject getPackageFragmentRoot
IPackageFragmentRoot getPackageFragmentRoot(IResource resource);
From source file:org.whole.lang.ui.controls.JavaSourceFolderFilter.java
License:Open Source License
public boolean select(Viewer viewer, Object parent, Object element) { // filter any non container resource if (!(element instanceof IContainer)) return false; IContainer container = (IContainer) element; IProject proj = container.getProject(); try {//from w w w . jav a2 s .c om if (!proj.hasNature(JavaCore.NATURE_ID)) return false; IJavaProject jProject = JavaCore.create(container.getProject()); if (jProject == null || !jProject.exists()) return false; // get any project container if (container == proj) return true; IPackageFragmentRoot sourceLocation = jProject.getPackageFragmentRoot(container); IClasspathEntry cpentry = sourceLocation.getRawClasspathEntry(); if (cpentry != null && cpentry.getEntryKind() == IClasspathEntry.CPE_SOURCE) { return true; } else { return false; } } catch (CoreException ex) { return false; } }
From source file:org.whole.lang.ui.controls.JavaSourceFolderValidator.java
License:Open Source License
private boolean isJavaSourceFolder(Object element) { if (!(element instanceof IContainer)) return false; IContainer container = (IContainer) element; IProject proj = container.getProject(); try {/*from w ww . j a v a 2s .c o m*/ if (!proj.hasNature(JavaCore.NATURE_ID)) return false; IJavaProject jProject = JavaCore.create(container.getProject()); if (jProject == null || !jProject.exists()) return false; IPackageFragmentRoot sourceLocation = jProject.getPackageFragmentRoot(container); IClasspathEntry cpentry = sourceLocation.getRawClasspathEntry(); if (cpentry != null && cpentry.getEntryKind() == IClasspathEntry.CPE_SOURCE) { return true; } else { return false; } } catch (CoreException ex) { return false; } }
From source file:org.wso2.developerstudio.eclipse.artifact.axis2.ui.wizard.Axis2ServiceCreationWizard.java
License:Open Source License
public boolean performFinish() { IFile axis2GenServiceXML = null;/*from ww w . j a va 2 s .c o m*/ 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.axis2serviceclient.ui.wizard.Axis2CodeGenerationOptionPage.java
License:Open Source License
private void openProjectCreation() { JavaProjectWizard cappProjectWizard = new JavaProjectWizard(); cappProjectWizard.init(PlatformUI.getWorkbench(), null); cappProjectWizard.setForcePreviousAndNextButtons(true); WizardDialog wizardDialog = new WizardDialog(getShell(), cappProjectWizard); if (wizardDialog.open() == Window.OK) { IProject createdCAppProject = cappProjectWizard.getCreatedElement().getJavaProject().getProject(); if (!createdCAppProject.isOpen()) { try { createdCAppProject.open(new NullProgressMonitor()); createdCAppProject.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); } catch (CoreException e) { log.error("Error occured while trying to open the newly created C-App project: " + createdCAppProject.getName()); }/*from w w w. j av a 2s .com*/ } IJavaProject createdJavaProject = cappProjectWizard.getCreatedElement().getJavaProject(); try { IClasspathEntry[] rawClasspath = createdJavaProject.getRawClasspath(); for (int i = 0; i < rawClasspath.length; i++) { if (rawClasspath[i].getEntryKind() == IClasspathEntry.CPE_SOURCE) { sourceFolder = createdJavaProject .getPackageFragmentRoot(rawClasspath[i].getPath().toOSString()); sourceFolderText.setText(sourceFolder.getPath().toOSString().substring(1)); break; } } } catch (JavaModelException e) { log.error("Error occured while trying to extract source information."); } this.getControl().setFocus(); setPageComplete(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 w w w . jav a 2 s. co m 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 {//w w w .j a v a 2s.c om 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 w w w . jav a 2 s . c o m*/ 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"); }// w w w . j av a 2s .c o 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 ww w.ja v a 2s . c om*/ 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 va 2 s . c om 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; }