[jbosstools-commits] JBoss Tools SVN: r31323 - in trunk/ws/plugins/org.jboss.tools.ws.creation.core: src/org/jboss/tools/ws/creation/core/commands and 3 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Sun May 15 05:00:38 EDT 2011


Author: Grid.Qian
Date: 2011-05-15 05:00:37 -0400 (Sun, 15 May 2011)
New Revision: 31323

Modified:
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/META-INF/MANIFEST.MF
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/AbstractGenerateCodeCommand.java
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ClientSampleCreationCommand.java
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/data/ServiceModel.java
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCoreMessages.java
   trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/JBossWSCreationUtils.java
Log:
JBIDE-7924: Allow user to create a web service in custom source root

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/META-INF/MANIFEST.MF	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/META-INF/MANIFEST.MF	2011-05-15 09:00:37 UTC (rev 31323)
@@ -38,7 +38,8 @@
  org.eclipse.debug.core,
  org.eclipse.jst.jee.web,
  javax.wsdl;visibility:=reexport,
- org.eclipse.jst.ws.annotations.core
+ org.eclipse.jst.ws.annotations.core,
+ org.eclipse.wst.common.emfworkbench.integration
 Bundle-ActivationPolicy: lazy
 Export-Package: org.jboss.tools.ws.creation.core,
  org.jboss.tools.ws.creation.core.commands,

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/AbstractGenerateCodeCommand.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/AbstractGenerateCodeCommand.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/AbstractGenerateCodeCommand.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -160,7 +160,7 @@
 		IJavaProject javaProject = JavaCore.create(project);
 		command.add("-k"); //$NON-NLS-1$
 		command.add("-s"); //$NON-NLS-1$
-		command.add(JBossWSCreationUtils.getJavaProjectSrcLocation(project));
+		command.add(JBossWSCreationUtils.getCustomSrcLocation(model.getJavaSourceFolder()));
 		command.add("-o"); //$NON-NLS-1$
 		StringBuffer opDir = new StringBuffer();
 		opDir.append(projectRoot).append(Path.SEPARATOR).append(javaProject.getOutputLocation().removeFirstSegments(1).toOSString());

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ClientSampleCreationCommand.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ClientSampleCreationCommand.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ClientSampleCreationCommand.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -178,8 +178,7 @@
 			IJavaProject javaProject) {
 		try {
 			IPath srcPath = new Path(
-					JBossWSCreationUtils.getJavaProjectSrcLocation(javaProject
-							.getProject()));
+					JBossWSCreationUtils.getCustomSrcLocation(model.getJavaSourceFolder()));
 			srcPath = javaProject.getPath().append(
 					srcPath.makeRelativeTo(javaProject.getProject()
 							.getLocation()));

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/commands/ImplementationClassCreationCommand.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -544,8 +544,7 @@
 	private IPath getSourceFolderPath(IProject project)
 			throws JavaModelException {
 		IPath path = new Path(
-				JBossWSCreationUtils.getJavaProjectSrcLocation(project
-						.getProject()));
+				JBossWSCreationUtils.getCustomSrcLocation(model.getJavaSourceFolder()));
 		return path.makeRelativeTo(project.getProject().getLocation());
 	}
 

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/data/ServiceModel.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/data/ServiceModel.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/data/ServiceModel.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -21,6 +21,7 @@
 	private String customClassName;
 	private String applicationClassName;
 	private String applicationName;
+	private String javaSourceFolder;
 
 	public int getWsScenario() {
 		return wsScenario;
@@ -167,4 +168,12 @@
 	public void setApplicationName(String applicationName) {
 		this.applicationName = applicationName;
 	}
+	
+	public String getJavaSourceFolder() {
+		return javaSourceFolder;
+	}
+
+	public void setJavaSourceFolder(String javaSourceFolder) {
+		this.javaSourceFolder = javaSourceFolder;
+	}
 }

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCore.properties	2011-05-15 09:00:37 UTC (rev 31323)
@@ -25,6 +25,8 @@
 Label_Button_Text_Remove=Remove
 Progress_Message_Generating=Generating Web Service resources...
 Client_Sample_Run_Over= Call Over!
+Label_SourceFolder_Name=Source Folder:
+Tooltip_SourceFolder=Specify the source folder into which the generated code files are written
 
 Error_Message_Invalid_Binding_File={0} is not a valid JAX-WS or JAXB binding file
 Error_Message_Failed_To_Generate_Code=Failed to Generate Web Service code, please check the log for more details

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCoreMessages.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCoreMessages.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/messages/JBossWSCreationCoreMessages.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -31,6 +31,8 @@
 	public static String Label_Button_Text_Remove;
 	public static String Progress_Message_Generating;  
     public static String Client_Sample_Run_Over;   
+    public static String Label_SourceFolder_Name;
+    public static String Tooltip_SourceFolder;
 
 	public static String Error_Message_Invalid_Binding_File;
 	public static String Error_Message_Failed_To_Generate_Code;

Modified: trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/JBossWSCreationUtils.java
===================================================================
--- trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/JBossWSCreationUtils.java	2011-05-15 08:59:40 UTC (rev 31322)
+++ trunk/ws/plugins/org.jboss.tools.ws.creation.core/src/org/jboss/tools/ws/creation/core/utils/JBossWSCreationUtils.java	2011-05-15 09:00:37 UTC (rev 31323)
@@ -30,6 +30,7 @@
 import java.util.Locale;
 
 import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.resources.ResourcesPlugin;
@@ -396,10 +397,22 @@
 
 		return null;
 	}
-
+	
+	// return the src location when user select a src path
+	public static String getCustomSrcLocation(String srcPath)
+			throws JavaModelException {
+		if (srcPath == null || "".equals(srcPath)) { //$NON-NLS-1$
+			return ""; //$NON-NLS-1$
+		}
+		IFolder srcFolder = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(srcPath));
+		return srcFolder.getLocation().toOSString();
+	}
+	
+	//return the default src of a java project
 	public static String getJavaProjectSrcLocation(IProject project)
 			throws JavaModelException {
-		IResource[] rs = getJavaSourceRoots(project);
+		IJavaProject javaProject = JavaCore.create(project);
+		IResource[] rs = getJavaSourceRoots(javaProject);
 		String src = ""; //$NON-NLS-1$
 		if (rs == null || rs.length == 0)
 			return src;
@@ -413,9 +426,8 @@
 		return src;
 	}
 
-	public static IResource[] getJavaSourceRoots(IProject project)
+	public static IResource[] getJavaSourceRoots(IJavaProject javaProject)
 			throws JavaModelException {
-		IJavaProject javaProject = JavaCore.create(project);
 		if (javaProject == null)
 			return null;
 		List<IResource> resources = new ArrayList<IResource>();
@@ -511,8 +523,7 @@
 		try {
 			IPath path = addPackagetoPath(project, packageName);
 			if (path == null) {
-				IResource[] resources = JBossWSCreationUtils
-						.getJavaSourceRoots(project.getProject());
+				IResource[] resources = JBossWSCreationUtils.getJavaSourceRoots(project);
 				if (resources != null && resources.length > 0) {
 					IJavaElement[] elements = project.getPackageFragmentRoot(
 							resources[0]).getChildren();



More information about the jbosstools-commits mailing list