summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.client
diff options
context:
space:
mode:
authorDhandapani <dhandapani@gluster.com>2011-05-25 18:16:49 +0530
committerDhandapani <dhandapani@gluster.com>2011-05-25 18:16:49 +0530
commit9130557ab0d8f0910cedc6eac17b5879ebb57be8 (patch)
tree4ada3d7cecaf309802fde9f18a6d1a2114e0e355 /src/com.gluster.storage.management.client
parent4d229fb2c145a9ed6905760d1481cef965c5b44d (diff)
parent5b70e0e1270ba91fef2fe28f50b1fb87cc1e9b27 (diff)
Merge branch 'disk-to-brick'
Conflicts: src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AbstractServersResource.java
Diffstat (limited to 'src/com.gluster.storage.management.client')
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java35
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java47
2 files changed, 53 insertions, 29 deletions
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java
index 75b6affc..4085d62b 100644
--- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java
+++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java
@@ -253,11 +253,29 @@ public class GlusterDataModelManager {
return logMessages;
}
- public Disk getVolumeDisk(String volumeDisk) {
+ /**
+ * @param serverPartition Qualified name of the disk to be returned (serverName:diskName)
+ * @return The disk object for given qualified name
+ */
+ public Disk getDisk(String serverPartition) {
List<Disk> allDisks = getReadyDisksOfAllServers();
- String brickInfo[] = volumeDisk.split(":");
+ String diskInfo[] = serverPartition.split(":");
for (Disk disk : allDisks) {
- if (disk.getServerName().equals(brickInfo[0]) && disk.getName().equals(brickInfo[1])) {
+ if (disk.getServerName().equals(diskInfo[0]) && disk.getName().equals(diskInfo[1])) {
+ return disk;
+ }
+ }
+ return null;
+ }
+
+ /*
+ * @param diskName (sda)
+ * @return The disk object for given disk name
+ */
+ public Disk getDiskDetails(String diskName) {
+ List<Disk> allDisks = getReadyDisksOfAllServers();
+ for (Disk disk : allDisks) {
+ if (disk.getName().equals(diskName)) {
return disk;
}
}
@@ -274,7 +292,7 @@ public class GlusterDataModelManager {
Disk disk = null;
List<Disk> volumeDisks = new ArrayList<Disk>();
for (String volumeDisk : volume.getDisks()) {
- disk = getVolumeDisk(volumeDisk);
+ disk = getDisk(volumeDisk);
if (disk != null && disk.isReady()) {
volumeDisks.add(disk);
}
@@ -418,6 +436,15 @@ public class GlusterDataModelManager {
volume.setAccessControlList(accessControlList);
setVolumeOption(volume, getOptionEntry(volume, Volume.OPTION_AUTH_ALLOW));
}
+
+ public Server getGlusterServer(String serverName) {
+ for(Server server : model.getCluster().getServers() ) {
+ if (server.getName().equals(serverName)) {
+ return server;
+ }
+ }
+ return null;
+ }
private Entry<String, String> getOptionEntry(Volume volume, String optionKey) {
for (Entry entry : volume.getOptions().entrySet()) {
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 b407296e..0555e322 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
@@ -20,7 +20,6 @@
*/
package com.gluster.storage.management.client;
-import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -29,11 +28,9 @@ import javax.ws.rs.core.MultivaluedMap;
import com.gluster.storage.management.core.constants.CoreConstants;
import com.gluster.storage.management.core.constants.GlusterConstants;
import com.gluster.storage.management.core.constants.RESTConstants;
-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.Brick;
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;
@@ -92,7 +89,7 @@ public class VolumesClient extends AbstractClient {
}
public Status deleteVolume(Volume volume, boolean deleteOption) {
- MultivaluedMap<String, String> queryParams = prepareGetDeleteVolumeQueryParams(volume.getName(), deleteOption);
+ MultivaluedMap<String, String> queryParams = prepareDeleteVolumeQueryParams(volume.getName(), deleteOption);
return (Status) deleteSubResource(volume.getName(), Status.class, queryParams);
}
@@ -101,10 +98,10 @@ public class VolumesClient extends AbstractClient {
VolumeOptionInfoListResponse.class));
}
- public Status addDisks(String volumeName, List<String> brickList) {
+ public Status addBricks(String volumeName, List<String> brickList) {
String bricks = StringUtil.ListToString(brickList, ",");
Form form = new Form();
- form.add(RESTConstants.QUERY_PARAM_DISKS, bricks);
+ form.add(RESTConstants.FORM_PARAM_BRICKS, bricks);
return (Status) postRequest(volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);
}
@@ -141,22 +138,22 @@ public class VolumesClient extends AbstractClient {
+ RESTConstants.SUBRESOURCE_DOWNLOAD, filePath);
}
- public Status removeBricks(String volumeName, List<Disk> diskList, boolean deleteOption) {
- String disks = StringUtil.ListToString(GlusterCoreUtil.getQualifiedBrickNames(diskList), ",");
- MultivaluedMap<String, String> queryParams = prepareGetRemoveBrickQueryParams(volumeName, disks, deleteOption);
+ public Status removeBricks(String volumeName, List<Brick> BrickList, boolean deleteOption) {
+ String bricks = StringUtil.ListToString(GlusterCoreUtil.getQualifiedBrickList(BrickList), ",");
+ MultivaluedMap<String, String> queryParams = prepareRemoveBrickQueryParams(volumeName, bricks, deleteOption);
return (Status) deleteSubResource(volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, queryParams);
}
- private MultivaluedMap<String, String> prepareGetRemoveBrickQueryParams(String volumeName, String disks,
+ private MultivaluedMap<String, String> prepareRemoveBrickQueryParams(String volumeName, String bricks,
boolean deleteOption) {
MultivaluedMap<String, String> queryParams = new MultivaluedMapImpl();
queryParams.add(RESTConstants.QUERY_PARAM_VOLUME_NAME, volumeName);
- queryParams.add(RESTConstants.QUERY_PARAM_DISKS, disks);
+ queryParams.add(RESTConstants.QUERY_PARAM_BRICKS, bricks);
queryParams.add(RESTConstants.QUERY_PARAM_DELETE_OPTION, "" + deleteOption);
return queryParams;
}
- private MultivaluedMap<String, String> prepareGetDeleteVolumeQueryParams(String volumeName, boolean deleteOption) {
+ private MultivaluedMap<String, String> prepareDeleteVolumeQueryParams(String volumeName, boolean deleteOption) {
MultivaluedMap<String, String> queryParams = new MultivaluedMapImpl();
queryParams.add(RESTConstants.QUERY_PARAM_VOLUME_NAME, volumeName);
queryParams.add(RESTConstants.QUERY_PARAM_DELETE_OPTION, "" + deleteOption);
@@ -187,37 +184,37 @@ public class VolumesClient extends AbstractClient {
return queryParams;
}
- public Status startMigration(String volumeName, String diskFrom, String diskTo) {
+ public Status startMigration(String volumeName, String brickFrom, String brickTo) {
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_SOURCE, brickFrom);
+ form.add(RESTConstants.FORM_PARAM_TARGET, brickTo);
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) {
+ public Status stopMigration(String volumeName, String brickFrom, String brickkTo) {
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_SOURCE, brickFrom);
+ form.add(RESTConstants.FORM_PARAM_TARGET, brickkTo);
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) {
+ public Status pauseMigration(String volumeName, String brickFrom, String brickTo) {
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_SOURCE, brickFrom);
+ form.add(RESTConstants.FORM_PARAM_TARGET, brickTo);
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) {
+ public Status statusMigration(String volumeName, String brickFrom, String brickTo) {
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_SOURCE, brickFrom);
+ form.add(RESTConstants.FORM_PARAM_TARGET, brickTo);
form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.FORM_PARAM_VALUE_STATUS);
return (Status) putRequest(volumeName + "/" + RESTConstants.SUBRESOURCE_DISKS, Status.class, form);