summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java9
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/ClustersResource.java7
2 files changed, 12 insertions, 4 deletions
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java
index 502923ba..607a86e8 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/LoginDialog.java
@@ -217,10 +217,10 @@ public class LoginDialog extends Dialog {
try {
CLUSTER_MODE mode = clusterDialog.getClusterMode();
String clusterName = clusterDialog.getClusterName();
+ GlusterDataModelManager modelManager = GlusterDataModelManager.getInstance();
switch(mode) {
case SELECT:
- GlusterDataModelManager.getInstance().initializeModel(usersClient.getSecurityToken(),
- clusterName);
+ modelManager.initializeModel(usersClient.getSecurityToken(), clusterName);
break;
case CREATE:
Status status = clustersClient.createCluster(clusterName);
@@ -229,10 +229,11 @@ public class LoginDialog extends Dialog {
setReturnCode(RETURN_CODE_ERROR);
return;
}
- GlusterDataModelManager.getInstance().initializeModelWithNewCluster(usersClient.getSecurityToken(),
- clusterName);
+ modelManager.initializeModelWithNewCluster(usersClient.getSecurityToken(), clusterName);
break;
case REGISTER:
+ clustersClient.registerCluster(clusterName, clusterDialog.getServerName());
+ modelManager.initializeModel(usersClient.getSecurityToken(), clusterName);
break;
}
super.okPressed();
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/ClustersResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/ClustersResource.java
index 18bece88..53618610 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/ClustersResource.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/ClustersResource.java
@@ -31,6 +31,7 @@ import javax.ws.rs.DELETE;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
+import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
@@ -80,6 +81,7 @@ public class ClustersResource {
return new StringListResponse(clusterList);
}
+ @SuppressWarnings("unchecked")
@POST
@Produces(MediaType.TEXT_XML)
public Status createCluster(@FormParam(FORM_PARAM_CLUSTER_NAME) String clusterName) {
@@ -98,6 +100,10 @@ public class ClustersResource {
}
}
+
+ @SuppressWarnings("unchecked")
+ @PUT
+ @Produces(MediaType.TEXT_XML)
public Status registerCluster(@FormParam(FORM_PARAM_CLUSTER_NAME) String clusterName,
@FormParam(FORM_PARAM_SERVER_NAME) String knownServer) {
EntityTransaction txn = clusterDao.startTransaction();
@@ -118,6 +124,7 @@ public class ClustersResource {
clusterDao.save(cluster);
return Status.STATUS_SUCCESS;
} catch(Exception e) {
+ txn.rollback();
return new Status(e);
}
}