diff options
| author | Dhandapani <dhandapani@gluster.com> | 2011-05-25 18:16:49 +0530 |
|---|---|---|
| committer | Dhandapani <dhandapani@gluster.com> | 2011-05-25 18:16:49 +0530 |
| commit | 9130557ab0d8f0910cedc6eac17b5879ebb57be8 (patch) | |
| tree | 4ada3d7cecaf309802fde9f18a6d1a2114e0e355 /src/com.gluster.storage.management.client | |
| parent | 4d229fb2c145a9ed6905760d1481cef965c5b44d (diff) | |
| parent | 5b70e0e1270ba91fef2fe28f50b1fb87cc1e9b27 (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')
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); |
