Author: akazakov
Date: 2008-04-03 11:44:55 -0400 (Thu, 03 Apr 2008)
New Revision: 7302
Modified:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamProjectChange.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/SeamBaseOperation.java
Log:
http://jira.jboss.com/jira/browse/JBIDE-1003 Fixed
Modified:
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamProjectChange.java
===================================================================
---
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamProjectChange.java 2008-04-03
15:33:03 UTC (rev 7301)
+++
trunk/seam/plugins/org.jboss.tools.seam.core/src/org/jboss/tools/seam/internal/core/refactoring/SeamProjectChange.java 2008-04-03
15:44:55 UTC (rev 7302)
@@ -29,14 +29,14 @@
protected IProject project;
- protected static String[] PROJECT_NAME_PROPERTIES = {
+ public final static String[] PROJECT_NAME_PROPERTIES = {
ISeamFacetDataModelProperties.SEAM_PARENT_PROJECT,
ISeamFacetDataModelProperties.SEAM_EAR_PROJECT,
ISeamFacetDataModelProperties.SEAM_EJB_PROJECT,
ISeamFacetDataModelProperties.SEAM_TEST_PROJECT
};
- protected static String[] FOLDER_PROPERTIES = {
+ public final static String[] FOLDER_PROPERTIES = {
ISeamFacetDataModelProperties.ENTITY_BEAN_SOURCE_FOLDER,
ISeamFacetDataModelProperties.SESSION_BEAN_SOURCE_FOLDER,
ISeamFacetDataModelProperties.TEST_SOURCE_FOLDER,
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java
===================================================================
---
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java 2008-04-03
15:33:03 UTC (rev 7301)
+++
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/preferences/SeamSettingsPreferencePage.java 2008-04-03
15:44:55 UTC (rev 7302)
@@ -19,6 +19,7 @@
import java.util.List;
import java.util.Map;
+import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
@@ -344,7 +345,7 @@
}
if(folder==null) {
SeamProjectsSet set = new SeamProjectsSet(project);
- IFolder f = set.getModelFolder();
+ IContainer f = set.getModelFolder();
folder = f!=null?f.getFullPath().toString():"";
}
return folder;
@@ -357,7 +358,7 @@
}
if(folder==null) {
SeamProjectsSet set = new SeamProjectsSet(project);
- IFolder f = set.getActionFolder();
+ IContainer f = set.getActionFolder();
folder = f!=null?f.getFullPath().toString():"";
}
return folder;
@@ -370,7 +371,7 @@
}
if(folder==null) {
SeamProjectsSet set = new SeamProjectsSet(project);
- IFolder f = set.getTestsFolder();
+ IContainer f = set.getTestsFolder();
folder = f!=null?f.getFullPath().toString():"";
}
return folder;
@@ -383,7 +384,7 @@
}
if(folder==null) {
SeamProjectsSet set = new SeamProjectsSet(project);
- IFolder f = set.getViewsFolder();
+ IContainer f = set.getViewsFolder();
folder = f!=null?f.getFullPath().toString():"";
}
return folder;
Modified:
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/SeamBaseOperation.java
===================================================================
---
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/SeamBaseOperation.java 2008-04-03
15:33:03 UTC (rev 7301)
+++
trunk/seam/plugins/org.jboss.tools.seam.ui/src/org/jboss/tools/seam/ui/wizard/SeamBaseOperation.java 2008-04-03
15:44:55 UTC (rev 7302)
@@ -22,9 +22,10 @@
import org.apache.tools.ant.util.FileUtils;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.commands.operations.AbstractOperation;
+import org.eclipse.core.resources.IContainer;
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;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdaptable;
@@ -62,6 +63,30 @@
super(label);
}
+ private void putResourceLocationProperty(Map<String, Object> vars, String
parameterName, IResource resource) {
+ if(resource!=null) {
+ vars.put(parameterName, resource.getLocation().toFile().toString());
+ } else {
+ vars.put(parameterName, "");
+ }
+ }
+
+ private void putResourceLocationProperty(Map<String, Object> vars, String
parameterName, String resourcePath) {
+ if(resourcePath!=null) {
+ vars.put(parameterName, resourcePath);
+ } else {
+ vars.put(parameterName, "");
+ }
+ }
+
+ private void putPackageLocationProperty(Map<String, Object> vars, String
parameterName, String packageName) {
+ if(packageName!=null) {
+ vars.put(parameterName, packageName.replace('.','/'));
+ } else {
+ vars.put(parameterName, "");
+ }
+ }
+
/**
* @see AbstractOperation#execute(IProgressMonitor, IAdaptable)
*/
@@ -93,22 +118,23 @@
String entityFolder = getEntityBeanPackageName(seamFacetPrefs, params);
String testFolder = getTestCasesPackageName(seamFacetPrefs, params);
- vars.put(IParameter.SEAM_PROJECT_INSTANCE,project);
+ vars.put(IParameter.SEAM_PROJECT_INSTANCE, project);
vars.put(IParameter.JBOSS_SEAM_HOME,
SeamRuntimeManager.getInstance().getRuntimeForProject(project).getHomeDir());
- vars.put(IParameter.SEAM_PROJECT_LOCATION_PATH,project.getLocation().toFile().toString());
- vars.put(IParameter.SEAM_PROJECT_WEBCONTENT_PATH,seamPrjSet.getViewsFolder().getLocation().toFile().toString());
- vars.put(IParameter.SEAM_PROJECT_SRC_ACTION,seamPrjSet.getActionFolder().getLocation().toFile().toString());
- vars.put(IParameter.SEAM_PROJECT_SRC_MODEL,seamPrjSet.getModelFolder().getLocation().toFile().toString());
- vars.put(IParameter.SEAM_EJB_PROJECT_LOCATION_PATH,seamPrjSet.getEjbProject()!=null?seamPrjSet.getEjbProject().getLocation().toFile().toString():"");
- vars.put(IParameter.SEAM_TEST_PROJECT_LOCATION_PATH,seamPrjSet.getTestProject().getLocation().toFile().toString());
- vars.put(IParameter.TEST_SOURCE_FOLDER,seamPrjSet.getTestsFolder().getLocation().toFile().toString());
- vars.put(IParameter.SESSION_BEAN_PACKAGE_PATH,
actionFolder.replace('.','/'));
- vars.put(IParameter.SESSION_BEAN_PACKAGE_NAME, actionFolder);
- vars.put(IParameter.TEST_CASES_PACKAGE_PATH,
testFolder.replace('.','/'));
- vars.put(IParameter.TEST_CASES_PACKAGE_NAME, testFolder);
- vars.put(IParameter.ENTITY_BEAN_PACKAGE_PATH,
entityFolder.replace('.','/'));
- vars.put(IParameter.ENTITY_BEAN_PACKAGE_NAME, entityFolder);
+ putResourceLocationProperty(vars, IParameter.SEAM_PROJECT_LOCATION_PATH, project);
+ putResourceLocationProperty(vars, IParameter.SEAM_PROJECT_WEBCONTENT_PATH,
seamPrjSet.getViewsFolder());
+ putResourceLocationProperty(vars, IParameter.SEAM_PROJECT_SRC_ACTION,
seamPrjSet.getActionFolder());
+ putResourceLocationProperty(vars, IParameter.SEAM_PROJECT_SRC_MODEL,
seamPrjSet.getModelFolder());
+ putResourceLocationProperty(vars, IParameter.SEAM_EJB_PROJECT_LOCATION_PATH,
seamPrjSet.getEjbProject());
+ putResourceLocationProperty(vars, IParameter.SEAM_TEST_PROJECT_LOCATION_PATH,
seamPrjSet.getTestProject());
+ putResourceLocationProperty(vars, IParameter.TEST_SOURCE_FOLDER,
seamPrjSet.getTestsFolder());
+ putPackageLocationProperty(vars, IParameter.SESSION_BEAN_PACKAGE_PATH, actionFolder);
+ putResourceLocationProperty(vars, IParameter.SESSION_BEAN_PACKAGE_NAME,
actionFolder);
+ putPackageLocationProperty(vars, IParameter.TEST_CASES_PACKAGE_PATH, testFolder);
+ putResourceLocationProperty(vars, IParameter.TEST_CASES_PACKAGE_NAME, testFolder);
+ putPackageLocationProperty(vars, IParameter.ENTITY_BEAN_PACKAGE_PATH, entityFolder);
+ putResourceLocationProperty(vars, IParameter.ENTITY_BEAN_PACKAGE_NAME, entityFolder);
+
List<FileMapping> fileMapping = getFileMappings(vars);
List<String[]> fileMappingCopy = applyVariables(fileMapping,vars);
FilterSetCollection filters = getFilterSetCollection(vars);
@@ -152,7 +178,7 @@
// ComponentCore is used to handle case when user changes
// default WebContent folder to another one in
// Web Facet configuration page
- IFolder viewFolder = seamPrjSet.getViewsFolder();
+ IContainer viewFolder = seamPrjSet.getViewsFolder();
if(viewFolder!=null) {
IProject prj = seamPrjSet.getWarProject();
IVirtualComponent webComp = ComponentCore.createComponent(prj);