summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-04-30 22:42:39 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-04-30 22:42:39 +0530
commit3227c53d097b715efcbef0029e70abf68eff5219 (patch)
treec30988a271de4d18af96fa04136a77ccff0fdd8b /src
parentffcf099e6186502e750676b9b266963d23c62756 (diff)
parent60f77939c0f58886bef1249b724fd66306adf3ec (diff)
Merge branch 'master' of github.com:gluster/console
Diffstat (limited to 'src')
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/DeleteVolumeAction.java8
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java16
2 files changed, 14 insertions, 10 deletions
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/DeleteVolumeAction.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/DeleteVolumeAction.java
index 9ddb976a..d5501082 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/DeleteVolumeAction.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/actions/DeleteVolumeAction.java
@@ -47,7 +47,7 @@ public class DeleteVolumeAction extends AbstractActionDelegate {
Integer deleteOption = new MessageDialog(getShell(), "Delete Volume", GUIHelper.getInstance().getImage(
IImageKeys.VOLUME), warningMessage, MessageDialog.QUESTION, new String[] { "Cancel",
- "Delete volume, keep back-up of data", "Delete volume and it's data" }, 2).open();
+ "Delete volume and it's data", "Delete volume, keep back-up of data" }, 2).open();
if (deleteOption == 0) {
return;
}
@@ -63,8 +63,12 @@ public class DeleteVolumeAction extends AbstractActionDelegate {
return;
}
}
+ String confirmDelete = "";
+ if (deleteOption == 1) {
+ confirmDelete = "-d";
+ }
- status = client.deleteVolume(volume, deleteOption.toString());
+ status = client.deleteVolume(volume, confirmDelete);
if (status.isSuccess()) {
showInfoDialog(actionDesc, "Volume [" + volume.getName() + "] deleted successfully!");
modelManager.deleteVolume(volume);
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
index 313a58b2..586bf5a3 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java
@@ -119,7 +119,7 @@ public class VolumesResource {
status.setMessage("Error while setting volume options: " + optionsStatus);
}
} else {
- Status cleanupStatus = cleanupDirectories(disks, volume.getName(), disks.size());
+ Status cleanupStatus = cleanupDirectories(disks, volume.getName(), disks.size(), "-d"); // delete permanently
if (!cleanupStatus.isSuccess()) {
status.setMessage(status.getMessage() + CoreConstants.NEWLINE + "Cleanup errors: "
+ CoreConstants.NEWLINE + cleanupStatus);
@@ -155,7 +155,7 @@ public class VolumesResource {
@Path("{" + PATH_PARAM_VOLUME_NAME + "}")
@Produces(MediaType.TEXT_XML)
public Status deleteVolume(@QueryParam(QUERY_PARAM_VOLUME_NAME) String volumeName,
- @QueryParam(QUERY_PARAM_DELETE_OPTION) int deleteOption) {
+ @QueryParam(QUERY_PARAM_DELETE_OPTION) String deleteOption) {
Volume volume = glusterUtil.getVolume(volumeName);
Status status = glusterUtil.deleteVolume(volumeName);
@@ -171,7 +171,7 @@ public class VolumesResource {
return status;
}
- private Status postDelete(String volumeName, List<String> disks, int deleteFlag) {
+ private Status postDelete(String volumeName, List<String> disks, String deleteFlag) {
String serverName, diskName, diskInfo[];
Status result;
for (int i = 0; i < disks.size(); i++) {
@@ -237,7 +237,7 @@ public class VolumesResource {
bricks.add(serverName + ":" + brickDir);
} else {
// Brick preparation failed. Cleanup directories already created and return failure status
- Status cleanupStatus = cleanupDirectories(disks, volumeName, i + 1);
+ Status cleanupStatus = cleanupDirectories(disks, volumeName, i + 1, "-d"); // delete permanently
if (!cleanupStatus.isSuccess()) {
// append cleanup error to prepare brick error
status.setMessage(status.getMessage() + CoreConstants.NEWLINE + cleanupStatus.getMessage());
@@ -259,7 +259,7 @@ public class VolumesResource {
}
@SuppressWarnings("rawtypes")
- private Status cleanupDirectories(List<String> disks, String volumeName, int maxIndex) {
+ private Status cleanupDirectories(List<String> disks, String volumeName, int maxIndex, String deleteFlag) {
String serverName, diskName, diskInfo[];
Status result;
for (int i = 0; i < maxIndex; i++) {
@@ -267,7 +267,7 @@ public class VolumesResource {
serverName = diskInfo[0];
diskName = diskInfo[1];
result = ((GenericResponse) serverUtil.executeOnServer(true, serverName, VOLUME_DIRECTORY_CLEANUP_SCRIPT + " "
- + diskName + " " + volumeName, GenericResponse.class)).getStatus();
+ + diskName + " " + volumeName + " " + deleteFlag, GenericResponse.class)).getStatus();
if (!result.isSuccess()) {
return result;
}
@@ -408,7 +408,7 @@ public class VolumesResource {
status = glusterUtil.addBricks(volumeName, bricks);
if (!status.isSuccess()) {
- Status cleanupStatus = cleanupDirectories(diskList, volumeName, diskList.size());
+ Status cleanupStatus = cleanupDirectories(diskList, volumeName, diskList.size(), "-d"); // Remove the directories if created
if (!cleanupStatus.isSuccess()) {
// append cleanup error to prepare brick error
status.setMessage(status.getMessage() + CoreConstants.NEWLINE + cleanupStatus.getMessage());
@@ -447,7 +447,7 @@ public class VolumesResource {
Form form = new Form();
form.add("volumeName", volume.getName());
form.add(RESTConstants.FORM_PARAM_DELETE_OPTION, 1);
- Status status = vr.deleteVolume("Vol2", 1);
+ Status status = vr.deleteVolume("Vol2", "1");
System.out.println("Code : " + status.getCode());
System.out.println("Message " + status.getMessage());
}