Author: adietish
Date: 2011-12-09 05:57:18 -0500 (Fri, 09 Dec 2011)
New Revision: 37155
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizard.java
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizardModel.java
Log:
[JBIDE-10427] migrated patch from M5 to TRUNK. moved usage of model instance variables to
main methods (preparing extraction of import strategies)
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizard.java
===================================================================
---
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizard.java 2011-12-09
10:56:44 UTC (rev 37154)
+++
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizard.java 2011-12-09
10:57:18 UTC (rev 37155)
@@ -33,6 +33,8 @@
import org.jboss.tools.common.ui.WizardUtils;
import org.jboss.tools.openshift.express.client.OpenShiftException;
import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
+import org.jboss.tools.openshift.express.internal.ui.common.MavenImportFailedException;
+import org.jboss.tools.openshift.express.internal.ui.common.WontOverwriteException;
/**
* @author André Dietisheim
@@ -79,34 +81,39 @@
model.addToExistingProject(monitor);
}
return Status.OK_STATUS;
+ } catch (final WontOverwriteException e) {
+ openWarning("Project already present", e.getMessage());
+ return Status.CANCEL_STATUS;
+ } catch (final MavenImportFailedException e) {
+ return OpenShiftUIActivator.createErrorStatus(
+ "Could not import maven project {0}.", e,
+ model.getProjectName());
} catch (IOException e) {
- status = OpenShiftUIActivator.createErrorStatus(
+ return OpenShiftUIActivator.createErrorStatus(
"Could not copy openshift configuration files to project {0}", e,
model.getProjectName());
- return status;
} catch (OpenShiftException e) {
- status = OpenShiftUIActivator.createErrorStatus(
+ return OpenShiftUIActivator.createErrorStatus(
"Could not import project to the workspace.", e);
} catch (URISyntaxException e) {
- status = OpenShiftUIActivator.createErrorStatus(
+ return OpenShiftUIActivator.createErrorStatus(
"The url of the remote git repository is not valid", e);
} catch (InvocationTargetException e) {
if (isTransportException(e)) {
TransportException te = getTransportException(e);
- status = OpenShiftUIActivator
+ return OpenShiftUIActivator
.createErrorStatus(
"Could not clone the repository. Authentication failed.\n"
+ " Please make sure that you added your private key to the ssh
preferences.",
te);
} else {
- status = OpenShiftUIActivator.createErrorStatus(
+ return OpenShiftUIActivator.createErrorStatus(
"An exception occurred while creating local git repository.", e);
}
} catch (Exception e) {
- status = OpenShiftUIActivator.createErrorStatus(
+ return OpenShiftUIActivator.createErrorStatus(
"Could int import project to the workspace.", e);
}
- return status;
}
}, getContainer());
IStatus status = queue.poll(10, TimeUnit.SECONDS);
@@ -136,6 +143,16 @@
return confirmed[0];
}
+ private void openWarning(final String title, final String message) {
+ getShell().getDisplay().syncExec(new Runnable() {
+
+ @Override
+ public void run() {
+ MessageDialog.openWarning(getShell(), title, message);
+ }
+ });
+ }
+
@Override
public void addPages() {
this.model = new ImportProjectWizardModel();
Modified:
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizardModel.java
===================================================================
---
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizardModel.java 2011-12-09
10:56:44 UTC (rev 37154)
+++
trunk/openshift/plugins/org.jboss.tools.openshift.express.ui/src/org/jboss/tools/openshift/express/internal/ui/wizard/ImportProjectWizardModel.java 2011-12-09
10:57:18 UTC (rev 37155)
@@ -57,6 +57,8 @@
import org.jboss.tools.openshift.express.internal.core.behaviour.ExpressServerUtils;
import org.jboss.tools.openshift.express.internal.ui.OpenShiftUIActivator;
import org.jboss.tools.openshift.express.internal.ui.common.FileUtils;
+import org.jboss.tools.openshift.express.internal.ui.common.MavenImportFailedException;
+import org.jboss.tools.openshift.express.internal.ui.common.WontOverwriteException;
import
org.jboss.tools.openshift.express.internal.ui.wizard.projectimport.GeneralProjectImportOperation;
import
org.jboss.tools.openshift.express.internal.ui.wizard.projectimport.MavenProjectImportOperation;
@@ -81,119 +83,47 @@
dataModel.put(NEW_PROJECT, false);
}
- public Object setProperty(String key, Object value) {
- Object oldVal = dataModel.get(key);
- dataModel.put(key, value);
- firePropertyChange(key, oldVal, value);
- return value;
- }
-
- public Object getProperty(String key) {
- return dataModel.get(key);
- }
-
- public void setUser(IUser user) {
- setProperty(USER, user);
- }
-
- public IUser getUser() {
- return (IUser) getProperty(USER);
- }
-
- public IApplication getApplication() {
- return (IApplication) getProperty(APPLICATION);
- }
-
- public String getApplicationName() {
- String applicationName = null;
- IApplication application = getApplication();
- if (application != null) {
- applicationName = application.getName();
+ /**
+ * Returns the destination folder that the OpenShift application will get
+ * cloned to.
+ *
+ * @return the destination that the application will get cloned to.
+ *
+ * @see #setRepositoryPath(String)
+ * @see #getRepositoryPath()
+ * @see #getApplicationName()
+ */
+ public File getCloneDestination() {
+ String repositoryPath = getRepositoryPath();
+ if (repositoryPath == null
+ || repositoryPath.length() == 0) {
+ return null;
}
- return applicationName;
+ return new File(repositoryPath, getApplicationName());
}
- public ICartridge getApplicationCartridge() {
- ICartridge cartridge = null;
- IApplication application = getApplication();
- if (application != null) {
- cartridge = application.getCartridge();
- }
- return cartridge;
+ private void shareProject(IProject project, IProgressMonitor monitor) throws
CoreException {
+ monitor.subTask(NLS.bind("Sharing project {0}...", project.getName()));
+ EGitUtils.share(project, monitor);
}
- public String getApplicationCartridgeName() {
- String cartridgeName = null;
- ICartridge cartridge = getApplicationCartridge();
- if (cartridge != null) {
- cartridgeName = cartridge.getName();
- }
- return cartridgeName;
- }
-
- public void setApplication(IApplication application) {
- setProperty(APPLICATION, application);
- }
-
- public String setRemoteName(String remoteName) {
- setProperty(REMOTE_NAME, remoteName);
- return remoteName;
- }
-
- public String getRemoteName() {
- return (String) getProperty(REMOTE_NAME);
- }
-
- public String setRepositoryPath(String repositoryPath) {
- return (String) setProperty(REPOSITORY_PATH, repositoryPath);
- }
-
- public String getRepositoryPath() {
- return (String) getProperty(REPOSITORY_PATH);
- }
-
- public boolean isNewProject() {
- return (Boolean) getProperty(NEW_PROJECT);
- }
-
- public Boolean setNewProject(boolean newProject) {
- return (Boolean) setProperty(NEW_PROJECT, newProject);
- }
-
- public String setProjectName(String projectName) {
- return (String) setProperty(PROJECT_NAME, projectName);
- }
-
- public String getProjectName() {
- return (String) getProperty(PROJECT_NAME);
- }
-
- public String setMergeUri(String mergeUri) {
- return (String) setProperty(MERGE_URI, mergeUri);
- }
-
- public String getMergeUri() {
- return (String) getProperty(MERGE_URI);
- }
-
/**
- * Shares (git enables) the user provided project.
+ * Copies the openshift configuration from the given source folder to the
+ * given project.
*
+ * @param sourceFolder
+ * the source to copy the openshift config from
+ * @param project
+ * the project to copy the configuration to.
* @param monitor
- * the monitor to report progress to.
- * @return
- * @throws CoreException
+ * the monitor to report progress to
+ * @throws IOException
*/
- private void shareProject(IProgressMonitor monitor) throws CoreException {
- monitor.subTask(NLS.bind("Sharing project {0}...", getProjectName()));
- EGitUtils.share(getProject(), monitor);
- }
-
- private void copyOpenshiftConfiguration(final File sourceFolder, IProgressMonitor
monitor)
+ private void copyOpenshiftConfiguration(final File sourceFolder, IProject project,
IProgressMonitor monitor)
throws IOException {
- IProject project = getProject();
+ Assert.isLegal(project != null);
File projectFolder = project.getLocation().toFile();
- monitor.subTask(NLS.bind("Copying openshift configuration to project {0}...",
getProjectName()));
+ monitor.subTask(NLS.bind("Copying openshift configuration to project {0}...",
project.getName()));
FileUtils.copy(new File(sourceFolder, ".git"), projectFolder, false);
FileUtils.copy(new File(sourceFolder, ".openshift"), projectFolder, false);
FileUtils.copy(new File(sourceFolder, "deployments"), projectFolder, false);
@@ -224,27 +154,46 @@
}
/**
- * Returns the user provided project.
+ * Imports the project that the user has chosen into the workspace.
*
+ * @param monitor
+ * the monitor to report progress to
* @throws OpenShiftException
+ * @throws CoreException
+ * @throws InterruptedException
+ * @throws URISyntaxException
+ * @throws InvocationTargetException
*
- * @see #getProjectName
+ * @see #setProjectName(String)
+ * @see #getProjectName()
+ * @see #
*/
- private IProject getProject() {
- String projectName = getProjectName();
- IProject project = getProject(projectName);
- Assert.isTrue(project != null && project.exists(),
- NLS.bind("Could not find project {0} in your workspace.", projectName));
- return project;
- }
-
public void importProject(IProgressMonitor monitor)
throws OpenShiftException, CoreException, InterruptedException, URISyntaxException,
InvocationTargetException {
- File repositoryFolder = cloneRepository(monitor);
- List<IProject> importedProjects = importMavenProject(repositoryFolder, monitor);
+ File cloneDestination = getCloneDestination();
+ if (cloneDestination != null
+ && cloneDestination.exists()) {
+ throw new WontOverwriteException(
+ NLS.bind(
+ "There's already a folder at {0}. The new OpenShift project would
overwrite it. " +
+ "Please choose another destination to clone to.",
+ cloneDestination.getAbsolutePath()));
+ }
+ File repositoryFolder = cloneRepository(getApplication(), getRemoteName(),
getCloneDestination(), monitor);
+ List<IProject> importedProjects = importProjectsFrom(repositoryFolder, monitor);
+ if (importedProjects.size() == 0) {
+ throw new MavenImportFailedException(
+ "The maven import failed. One of the possible reasons is that there's
already a project " +
+ "in your workspace that matches the maven name of the OpenShift application.
" +
+ "Please rename your workspace project in that case and start over
again.");
+ }
+
connectToGitRepo(importedProjects, repositoryFolder, monitor);
- createServerAdapterIfRequired(importedProjects, monitor);
+ if (isCreateServer()) {
+ createServerAdapter(
+ importedProjects, getServerType(), getRuntime(), getMode(), getApplication(),
getUser(), monitor);
+ }
}
/**
@@ -287,16 +236,23 @@
// model.shareProject(monitor);
// model.mergeWithApplicationRepository(repository,
// monitor);
+ IApplication application = getApplication();
File tmpFolder = FileUtils.getRandomTmpFolder();
- File repositoryFile = cloneRepository(tmpFolder, monitor);
- copyOpenshiftConfiguration(repositoryFile, monitor);
+ File repositoryFile = cloneRepository(application, getRemoteName(), tmpFolder,
monitor);
+ String projectName = getProjectName();
+ IProject project = getProject(projectName);
+ copyOpenshiftConfiguration(repositoryFile, project, monitor);
FileUtil.safeDelete(tmpFolder);
- shareProject(monitor);
- createServerAdapterIfRequired(monitor);
+
+ shareProject(project, monitor);
+ if (isCreateServer()) {
+ createServerAdapter(
+ project, getServerType(), getRuntime(), getMode(), application, getUser(),
monitor);
+ }
}
-
- public void mergeWithApplicationRepository(Repository repository, IProgressMonitor
monitor)
+ @SuppressWarnings("unused")
+ private void mergeWithApplicationRepository(Repository repository, IProgressMonitor
monitor)
throws MalformedURLException, URISyntaxException, IOException, OpenShiftException,
CoreException,
InvocationTargetException {
String uri = getApplication().getGitUri();
@@ -304,24 +260,26 @@
EGitUtils.mergeWithRemote(new URIish(uri), "refs/remotes/openshift/HEAD",
repository, monitor);
}
- private IProject getProject(String projectName) {
- return ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- }
-
- public boolean projectExists(final File gitProjectFolder) {
- String projectName = gitProjectFolder.getName();
- IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
- return project.exists();
- }
-
- private List<IProject> importMavenProject(final File gitProjectFolder,
IProgressMonitor monitor)
+ /**
+ * Imports the projects that are within the given folder. Supports maven and
+ * general projects
+ *
+ * @param folder
+ * the folder the projects are located in
+ * @param monitor
+ * the monitor to report progress to
+ * @return
+ * @throws CoreException
+ * @throws InterruptedException
+ */
+ private List<IProject> importProjectsFrom(final File folder, IProgressMonitor
monitor)
throws CoreException, InterruptedException {
- MavenProjectImportOperation mavenImport = new
MavenProjectImportOperation(gitProjectFolder);
+ MavenProjectImportOperation mavenImport = new MavenProjectImportOperation(folder);
List<IProject> importedProjects = Collections.emptyList();
if (mavenImport.isMavenProject()) {
importedProjects = mavenImport.importToWorkspace(monitor);
} else {
- importedProjects = new
GeneralProjectImportOperation(gitProjectFolder).importToWorkspace(monitor);
+ importedProjects = new
GeneralProjectImportOperation(folder).importToWorkspace(monitor);
}
return importedProjects;
}
@@ -350,36 +308,40 @@
* @see ImportProjectWizardModel#getApplication()
* @see #getRepositoryPath()
*/
- private File cloneRepository(IProgressMonitor monitor)
+ private File cloneRepository(IApplication application, String remoteName, File
destination, IProgressMonitor monitor)
throws OpenShiftException, InvocationTargetException, InterruptedException,
URISyntaxException {
- IApplication application = getApplication();
- File destination = new File(getRepositoryPath(), application.getName());
- return cloneRepository(destination, monitor);
- }
-
- private File cloneRepository(File destination, IProgressMonitor monitor)
- throws OpenShiftException, InvocationTargetException, InterruptedException,
URISyntaxException {
- IApplication application = getApplication();
monitor.subTask(NLS.bind("Cloning repository for application {0}...",
application.getName()));
- cloneRepository(application.getGitUri(), destination, monitor);
+ cloneRepository(application.getGitUri(), remoteName, destination, monitor);
return destination;
}
- private void cloneRepository(String uri, File destination, IProgressMonitor monitor)
+ private void cloneRepository(String uri, String remoteName, File destination,
IProgressMonitor monitor)
throws OpenShiftException, URISyntaxException, InvocationTargetException,
InterruptedException {
- if (destination.exists()) {
- FileUtil.completeDelete(destination);
- }
ensureEgitUIIsStarted();
URIish gitUri = new URIish(uri);
CloneOperation cloneOperation =
- new CloneOperation(gitUri, true, null, destination, Constants.HEAD, getRemoteName(),
CLONE_TIMEOUT);
+ new CloneOperation(gitUri, true, null, destination, Constants.HEAD, remoteName,
CLONE_TIMEOUT);
cloneOperation.run(monitor);
RepositoryUtil repositoryUtil = Activator.getDefault().getRepositoryUtil();
repositoryUtil.addConfiguredRepository(new File(destination, Constants.DOT_GIT));
}
/**
+ * Returns the workspace project with the given name if it exists. Returns
+ * <code>null</code> otherwise.
+ *
+ * @param name
+ * the project name
+ * @return the project with the given name
+ */
+ public IProject getProject(String name) {
+ IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(name);
+ Assert.isTrue(project != null && project.exists(),
+ NLS.bind("Could not find project {0} in your workspace.", name));
+ return project;
+ }
+
+ /**
* The EGit UI plugin initializes the ssh factory to present the user a
* passphrase prompt if the ssh key was not read yet. If this initialization
* is not executed, the ssh connection to the git repo would just fail with
@@ -407,51 +369,51 @@
* the monitor to report progress to.
* @throws OpenShiftException
*/
- private void createServerAdapterIfRequired(IProgressMonitor monitor) throws
OpenShiftException {
- monitor.subTask(NLS.bind("Creating server adapter for project {0}",
getProjectName()));
- createServerAdapterIfRequired(Collections.singletonList(getProject()), monitor);
+ private void createServerAdapter(IProject project, IServerType serverType, IRuntime
runtime, String mode,
+ IApplication application, IUser user, IProgressMonitor monitor) throws
OpenShiftException {
+ String name = project.getName();
+ monitor.subTask(NLS.bind("Creating server adapter for project {0}", name));
+ createServerAdapter(Collections.singletonList(project), serverType, runtime, mode,
application, user,
+ monitor);
}
- private void createServerAdapterIfRequired(List<IProject> importedProjects,
IProgressMonitor monitor) {
- Boolean b = (Boolean) getProperty(AdapterWizardPageModel.CREATE_SERVER);
- if (b != null && b.booleanValue()) {
- try {
- renameWebContextRoot(importedProjects);
- IServer server = createServerAdapter();
- addModules(getModules(importedProjects), server, monitor);
- } catch (CoreException ce) {
- OpenShiftUIActivator.getDefault().getLog().log(ce.getStatus());
- } catch (OpenShiftException ose) {
- IStatus s = new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
- "Cannot create openshift server adapter", ose);
- OpenShiftUIActivator.getDefault().getLog().log(s);
- }
+ private void createServerAdapter(List<IProject> importedProjects, IServerType
serverType,
+ IRuntime runtime, String mode, IApplication application, IUser user, IProgressMonitor
monitor) {
+ try {
+ renameWebContextRoot(importedProjects);
+ IServer server = doCreateServerAdapter(serverType, runtime, mode, application, user);
+ addModules(getModules(importedProjects), server, monitor);
+ } catch (CoreException ce) {
+ OpenShiftUIActivator.getDefault().getLog().log(ce.getStatus());
+ } catch (OpenShiftException ose) {
+ IStatus s = new Status(IStatus.ERROR, OpenShiftUIActivator.PLUGIN_ID,
+ "Cannot create openshift server adapter", ose);
+ OpenShiftUIActivator.getDefault().getLog().log(s);
}
}
private void renameWebContextRoot(List<IProject> importedProjects) {
for (IProject project : importedProjects) {
- renameWebContextRoot(project);
+ ComponentUtilities.setServerContextRoot(project, "/");
}
}
- private void renameWebContextRoot(IProject project) {
- ComponentUtilities.setServerContextRoot(project, "/");
- }
-
- private IServer createServerAdapter() throws CoreException,
+ private IServer doCreateServerAdapter(IServerType serverType, IRuntime rt, String mode,
IApplication application,
+ IUser user) throws CoreException,
OpenShiftException {
- IServerType type = (IServerType) getProperty(AdapterWizardPageModel.SERVER_TYPE);
- IRuntime rt = (IRuntime) getProperty(AdapterWizardPageModel.RUNTIME_DELEGATE);
- String mode = (String) getProperty(AdapterWizardPageModel.MODE);
+ Assert.isLegal(serverType != null);
+ Assert.isLegal(rt != null);
+ Assert.isLegal(mode != null);
+ Assert.isLegal(application != null);
+ Assert.isLegal(user != null);
- String serverNameBase = getApplication().getName() + " OpenShift Server";
+ String serverNameBase = application.getName() + " OpenShift Server";
String serverName =
org.jboss.ide.eclipse.as.core.util.ServerUtil.getDefaultServerName(serverNameBase);
- IServer server = ExpressServerUtils.createServer(rt, type, serverName);
- ExpressServerUtils.fillServerWithOpenShiftDetails(server,
getApplication().getApplicationUrl(),
- getUser().getRhlogin(), getUser().getPassword(),
- getUser().getDomain().getNamespace(), getApplication().getName(),
getApplication().getUUID(), mode);
+ IServer server = ExpressServerUtils.createServer(rt, serverType, serverName);
+ ExpressServerUtils.fillServerWithOpenShiftDetails(server,
application.getApplicationUrl(),
+ user.getRhlogin(), user.getPassword(),
+ user.getDomain().getNamespace(), application.getName(), application.getUUID(),
mode);
return server;
}
@@ -479,4 +441,117 @@
}
return toAdd;
}
+
+ public Object setProperty(String key, Object value) {
+ Object oldVal = dataModel.get(key);
+ dataModel.put(key, value);
+ firePropertyChange(key, oldVal, value);
+ return value;
+ }
+
+ public Object getProperty(String key) {
+ return dataModel.get(key);
+ }
+
+ public void setUser(IUser user) {
+ setProperty(USER, user);
+ }
+
+ public IUser getUser() {
+ return (IUser) getProperty(USER);
+ }
+
+ public IApplication getApplication() {
+ return (IApplication) getProperty(APPLICATION);
+ }
+
+ public String getApplicationName() {
+ String applicationName = null;
+ IApplication application = getApplication();
+ if (application != null) {
+ applicationName = application.getName();
+ }
+ return applicationName;
+ }
+
+ public ICartridge getApplicationCartridge() {
+ ICartridge cartridge = null;
+ IApplication application = getApplication();
+ if (application != null) {
+ cartridge = application.getCartridge();
+ }
+ return cartridge;
+ }
+
+ public String getApplicationCartridgeName() {
+ String cartridgeName = null;
+ ICartridge cartridge = getApplicationCartridge();
+ if (cartridge != null) {
+ cartridgeName = cartridge.getName();
+ }
+ return cartridgeName;
+ }
+
+ public void setApplication(IApplication application) {
+ setProperty(APPLICATION, application);
+ }
+
+ public String setRemoteName(String remoteName) {
+ setProperty(REMOTE_NAME, remoteName);
+ return remoteName;
+ }
+
+ public String getRemoteName() {
+ return (String) getProperty(REMOTE_NAME);
+ }
+
+ public String setRepositoryPath(String repositoryPath) {
+ return (String) setProperty(REPOSITORY_PATH, repositoryPath);
+ }
+
+ public String getRepositoryPath() {
+ return (String) getProperty(REPOSITORY_PATH);
+ }
+
+ public boolean isNewProject() {
+ return (Boolean) getProperty(NEW_PROJECT);
+ }
+
+ public Boolean setNewProject(boolean newProject) {
+ return (Boolean) setProperty(NEW_PROJECT, newProject);
+ }
+
+ public String setProjectName(String projectName) {
+ return (String) setProperty(PROJECT_NAME, projectName);
+ }
+
+ public String getProjectName() {
+ return (String) getProperty(PROJECT_NAME);
+ }
+
+ public String setMergeUri(String mergeUri) {
+ return (String) setProperty(MERGE_URI, mergeUri);
+ }
+
+ public String getMergeUri() {
+ return (String) getProperty(MERGE_URI);
+ }
+
+ public IServerType getServerType() {
+ return (IServerType) getProperty(AdapterWizardPageModel.SERVER_TYPE);
+ }
+
+ public IRuntime getRuntime() {
+ return (IRuntime) getProperty(AdapterWizardPageModel.RUNTIME_DELEGATE);
+ }
+
+ public String getMode() {
+ return (String) getProperty(AdapterWizardPageModel.MODE);
+ }
+
+ public boolean isCreateServer() {
+ Boolean isCreateServer = (Boolean) getProperty(AdapterWizardPageModel.CREATE_SERVER);
+ return isCreateServer != null
+ && isCreateServer.booleanValue();
+ }
}