From d59ea1a86faa85a0495387aa6d18a7fef94d2e34 Mon Sep 17 00:00:00 2001 From: Shireesh Anjal Date: Mon, 30 May 2011 18:28:16 +0530 Subject: Design changes - introducing cluster-server mapping on gateway --- .../com/gluster/storage/management/gui/dialogs/LoginDialog.java | 9 +++++---- .../storage/management/server/resources/ClustersResource.java | 7 +++++++ 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); } } -- cgit