summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.client
diff options
context:
space:
mode:
authorSelvam <selvam@gluster.com>2011-05-03 18:02:39 +0530
committerSelvam <selvam@gluster.com>2011-05-03 18:02:39 +0530
commitdf48da74b8775e59fdb9d59c9a9562a2449a2956 (patch)
tree83e00176f30ea5b95ef661737013b491076dd36d /src/com.gluster.storage.management.client
parent52a5b56223f1ba86ecc5af3d26ebf78037358c26 (diff)
Story #22 Disk migration (for a Volume)
Diffstat (limited to 'src/com.gluster.storage.management.client')
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
index 33791a50..33a93690 100644
--- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
+++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java
@@ -32,6 +32,7 @@ import com.gluster.storage.management.core.model.Disk;
import com.gluster.storage.management.core.model.Disk.DISK_STATUS;
import com.gluster.storage.management.core.model.Status;
import com.gluster.storage.management.core.model.Volume;
+import com.gluster.storage.management.core.model.Volume.VOLUME_TYPE;
import com.gluster.storage.management.core.response.LogMessageListResponse;
import com.gluster.storage.management.core.response.VolumeListResponse;
import com.gluster.storage.management.core.response.VolumeOptionInfoListResponse;
@@ -162,6 +163,43 @@ public class VolumesClient extends AbstractClient {
return queryParams;
}
+ public Status startMigration( String volumeName, String diskFrom, String diskTo) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_VALUE_SOURCE, diskFrom);
+ form.add(RESTConstants.FORM_PARAM_VALUE_TARGET, diskTo);
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.FORM_PARAM_VALUE_START);
+
+ return (Status) putRequest( volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);
+ }
+
+ public Status stopMigration(String volumeName, String diskFrom, String diskTo) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_VALUE_SOURCE, diskFrom);
+ form.add(RESTConstants.FORM_PARAM_VALUE_TARGET, diskTo);
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.FORM_PARAM_VALUE_STOP);
+
+ return (Status) putRequest( volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);
+ }
+
+ public Status pauseMigration(String volumeName, String diskFrom, String diskTo) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_VALUE_SOURCE, diskFrom);
+ form.add(RESTConstants.FORM_PARAM_VALUE_TARGET, diskTo);
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.FORM_PARAM_VALUE_PAUSE);
+
+ return (Status) putRequest( volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);
+ }
+
+ public Status statusMigration(String volumeName, String diskFrom, String diskTo) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_VALUE_SOURCE, diskFrom);
+ form.add(RESTConstants.FORM_PARAM_VALUE_TARGET, diskTo);
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.FORM_PARAM_VALUE_STATUS);
+
+ return (Status) putRequest( volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);
+ }
+
+
public static void main(String[] args) {
UsersClient usersClient = new UsersClient();
if (usersClient.authenticate("gluster", "gluster").isSuccess()) {