summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSelvasundaram <selvam@gluster.com>2011-06-20 16:06:23 +0530
committerSelvasundaram <selvam@gluster.com>2011-06-21 12:11:46 +0530
commit924badad2e1c674ab2021cfdae0037098bf131db (patch)
treea02fb42c23f2a07f90d1637a5907c12926820fdc /src
parent2bddfe0603ffaba22f3e8bc83e179e49476da018 (diff)
parentd61fa3b93293c6323c29006c97a88968fa2843bf (diff)
Merge branch 'tasks'
Diffstat (limited to 'src')
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/AbstractClient.java19
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java15
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/RunningTaskClient.java26
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/TasksClient.java96
-rw-r--r--src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java36
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/RESTConstants.java14
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Cluster.java14
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java84
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTaskStatus.java41
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/RunningTaskListResponse.java46
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/IImageKeys.java2
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/MigrateDiskWizard.java3
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java18
-rw-r--r--src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java33
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java134
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/TasksResource.java28
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java12
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/FormatDiskManager.java71
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/MigrateDiskManager.java50
-rwxr-xr-xsrc/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/RunningTaskManager.java44
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/VolumeRebalanceManager.java50
21 files changed, 184 insertions, 652 deletions
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/AbstractClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/AbstractClient.java
index e8df26cb..282b45b5 100644
--- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/AbstractClient.java
+++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/AbstractClient.java
@@ -42,7 +42,8 @@ public abstract class AbstractClient {
* This constructor will work only after the data model manager has been initialized.
*/
public AbstractClient() {
- this(GlusterDataModelManager.getInstance().getSecurityToken(), GlusterDataModelManager.getInstance().getClusterName());
+ this(GlusterDataModelManager.getInstance().getSecurityToken(), GlusterDataModelManager.getInstance()
+ .getClusterName());
}
/**
@@ -55,8 +56,8 @@ public abstract class AbstractClient {
public AbstractClient(String securityToken, String clusterName) {
this.clusterName = clusterName;
setSecurityToken(securityToken);
-
- SSLContext context = initializeSSLContext();
+
+ SSLContext context = initializeSSLContext();
DefaultClientConfig config = createClientConfig(context);
// this must be after setting clusterName as sub-classes may refer to cluster name in the getResourcePath method
@@ -84,16 +85,16 @@ public abstract class AbstractClient {
SSLContext context = null;
try {
context = SSLContext.getInstance(PROTOCOL_TLS);
-
+
KeyStore keyStore = KeyStore.getInstance(KEYSTORE_TYPE_JKS);
keyStore.load(loadResource(TRUSTED_KEYSTORE), TRUSTED_KEYSTORE_ACCESS.toCharArray());
KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(ALGORITHM_SUNX509);
keyManagerFactory.init(keyStore, TRUSTED_KEYSTORE_ACCESS.toCharArray());
-
- TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(ALGORITHM_SUNX509);
- trustManagerFactory.init(keyStore);
-
+
+ TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(ALGORITHM_SUNX509);
+ trustManagerFactory.init(keyStore);
+
context.init(keyManagerFactory.getKeyManagers(), trustManagerFactory.getTrustManagers(), null);
} catch (Exception e) {
throw new GlusterRuntimeException(
@@ -101,7 +102,7 @@ public abstract class AbstractClient {
}
return context;
}
-
+
private InputStream loadResource(String resourcePath) {
return this.getClass().getClassLoader().getResourceAsStream(resourcePath);
}
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 e5d58ca4..fe8b3048 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
@@ -33,20 +33,18 @@ import com.gluster.storage.management.core.model.Event.EVENT_TYPE;
import com.gluster.storage.management.core.model.GlusterDataModel;
import com.gluster.storage.management.core.model.GlusterServer;
import com.gluster.storage.management.core.model.Server;
+import com.gluster.storage.management.core.model.TaskInfo;
import com.gluster.storage.management.core.model.Volume;
import com.gluster.storage.management.core.model.Volume.TRANSPORT_TYPE;
import com.gluster.storage.management.core.model.Volume.VOLUME_STATUS;
import com.gluster.storage.management.core.model.Volume.VOLUME_TYPE;
import com.gluster.storage.management.core.model.VolumeOptionInfo;
import com.gluster.storage.management.core.response.GlusterServerListResponse;
-import com.gluster.storage.management.core.response.RunningTaskListResponse;
import com.gluster.storage.management.core.response.ServerListResponse;
import com.gluster.storage.management.core.response.VolumeListResponse;
import com.gluster.storage.management.core.response.VolumeOptionInfoListResponse;
public class GlusterDataModelManager {
- // private Server discoveredServer1, discoveredServer2, discoveredServer3,
- // discoveredServer4, discoveredServer5;
private static GlusterDataModelManager instance = new GlusterDataModelManager();
private GlusterDataModel model;
private String securityToken;
@@ -94,7 +92,7 @@ public class GlusterDataModelManager {
initializeAutoDiscoveredServers(cluster);
// initializeDisks();
- initializeRunningTasks(cluster);
+ initializeTasks(cluster);
initializeAlerts(cluster);
initializeVolumeOptionsDefaults();
@@ -136,12 +134,9 @@ public class GlusterDataModelManager {
this.volumeOptionsDefaults = response.getOptions();
}
- public void initializeRunningTasks(Cluster cluster) {
- RunningTaskListResponse runningTaskResponse = new RunningTaskClient(cluster.getName()).getRunningTasks();
- if (!runningTaskResponse.getStatus().isSuccess()) {
- throw new GlusterRuntimeException(runningTaskResponse.getStatus().getMessage());
- }
- cluster.setRunningTasks(runningTaskResponse.getRunningTasks());
+ public void initializeTasks(Cluster cluster) {
+ List<TaskInfo> taskInfoList = new TasksClient(cluster.getName()).getAllTasks();
+ cluster.setTaskInfoList(taskInfoList);
}
public void initializeAlerts(Cluster cluster) {
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/RunningTaskClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/RunningTaskClient.java
deleted file mode 100644
index cfeddcc2..00000000
--- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/RunningTaskClient.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.gluster.storage.management.client;
-
-import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_PATH_CLUSTERS;
-import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_RUNNING_TASKS;
-
-import com.gluster.storage.management.core.response.RunningTaskListResponse;
-
-public class RunningTaskClient extends AbstractClient {
-
- public RunningTaskClient(String clusterName) {
- super(clusterName);
- }
-
- public RunningTaskClient(String securityToken, String clusterName) {
- super(securityToken, clusterName);
- }
-
- @Override
- public String getResourcePath() {
- return RESOURCE_PATH_CLUSTERS + "/" + clusterName + "/" + RESOURCE_RUNNING_TASKS;
- }
-
- public RunningTaskListResponse getRunningTasks() {
- return (RunningTaskListResponse) fetchResource(RunningTaskListResponse.class);
- }
-}
diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/TasksClient.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/TasksClient.java
new file mode 100644
index 00000000..9fab945c
--- /dev/null
+++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/TasksClient.java
@@ -0,0 +1,96 @@
+/**
+ * tasksClient.java
+ *
+ * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
+ * This file is part of Gluster Management Console.
+ *
+ * Gluster Management Console is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License as published
+ * by the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Gluster Management Console is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+package com.gluster.storage.management.client;
+
+import java.util.List;
+
+import javax.ws.rs.core.MultivaluedMap;
+
+import com.gluster.storage.management.core.constants.RESTConstants;
+import com.gluster.storage.management.core.exceptions.GlusterRuntimeException;
+import com.gluster.storage.management.core.model.Status;
+import com.gluster.storage.management.core.model.TaskInfo;
+import com.gluster.storage.management.core.response.TaskListResponse;
+import com.gluster.storage.management.core.response.TaskResponse;
+import com.sun.jersey.api.representation.Form;
+import com.sun.jersey.core.util.MultivaluedMapImpl;
+
+public class TasksClient extends AbstractClient {
+
+ public TasksClient(String clusterName) {
+ super(clusterName);
+ }
+
+ public TasksClient(String securityToken,String clusterName) {
+ super(securityToken, clusterName);
+ }
+
+ @Override
+ public String getResourcePath() {
+ return RESTConstants.RESOURCE_PATH_CLUSTERS + "/" + clusterName + "/" + RESTConstants.RESOURCE_TASKS + "/";
+ }
+
+ @SuppressWarnings("unchecked")
+ public List<TaskInfo> getAllTasks() { // TaskListResponse get only the list of taskInfo not list of Tasks
+ TaskListResponse response = (TaskListResponse) fetchResource(TaskListResponse.class);
+ if (response.getStatus().isSuccess()) {
+ return (List<TaskInfo>) response.getData();
+ } else {
+ throw new GlusterRuntimeException("Exception on fetching tasks [" + response.getStatus().getMessage() + "]");
+ }
+ }
+
+ // see startMigration @ VolumesClient, etc
+ public TaskResponse pauseTask(String taskId) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_PAUSE);
+
+ return (TaskResponse) putRequest( taskId, TaskResponse.class, form);
+ }
+
+ public TaskResponse resumeTask(String taskId) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_RESUME);
+
+ return (TaskResponse) putRequest( taskId, TaskResponse.class, form);
+ }
+
+ public TaskResponse stopTask(String taskId) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_STOP);
+
+ return (TaskResponse) putRequest( taskId, TaskResponse.class, form);
+ }
+
+ public TaskResponse getTaskStatus(String taskId) {
+ Form form = new Form();
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_STATUS);
+
+ return (TaskResponse) putRequest( taskId, TaskResponse.class, form);
+ }
+
+ public TaskResponse deleteTask(String taskId) {
+ MultivaluedMap<String, String> queryParams = new MultivaluedMapImpl();
+ queryParams.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_DELETE);
+
+ return (TaskResponse) deleteSubResource(taskId, TaskResponse.class, queryParams);
+ }
+}
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 3b1a4dc0..a0a2e84a 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
@@ -71,11 +71,11 @@ public class VolumesClient extends AbstractClient {
}
public Status startVolume(String volumeName) {
- return performOperation(volumeName, RESTConstants.FORM_PARAM_VALUE_START);
+ return performOperation(volumeName, RESTConstants.TASK_START);
}
public Status stopVolume(String volumeName) {
- return performOperation(volumeName, RESTConstants.FORM_PARAM_VALUE_STOP);
+ return performOperation(volumeName, RESTConstants.TASK_STOP);
}
public Status setVolumeOption(String volume, String key, String value) {
@@ -192,41 +192,17 @@ public class VolumesClient extends AbstractClient {
return queryParams;
}
- public Status startMigration(String volumeName, String brickFrom, String brickTo) {
+ public Status startMigration(String volumeName, String brickFrom, String brickTo, Boolean autoCommit) {
Form form = new Form();
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);
+ form.add(RESTConstants.FORM_PARAM_OPERATION, RESTConstants.TASK_START);
+ form.add(RESTConstants.FORM_PARAM_AUTO_COMMIT, autoCommit);
return (Status) putRequest( volumeName + "/" + RESTConstants.RESOURCE_BRICKS, Status.class, form);
}
- public Status stopMigration(String volumeName, String brickFrom, String brickkTo) {
- Form form = new Form();
- 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.RESOURCE_BRICKS, Status.class, form);
- }
-
- public Status pauseMigration(String volumeName, String brickFrom, String brickTo) {
- Form form = new Form();
- 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.RESOURCE_BRICKS, Status.class, form);
- }
-
- public Status statusMigration(String volumeName, String brickFrom, String brickTo) {
- Form form = new Form();
- 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.RESOURCE_BRICKS, Status.class, form);
- }
+
public static void main(String[] args) {
UsersClient usersClient = new UsersClient();
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/RESTConstants.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/RESTConstants.java
index 40f13fbe..a082d49b 100644
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/RESTConstants.java
+++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/constants/RESTConstants.java
@@ -36,25 +36,28 @@ public class RESTConstants {
public static final String RESOURCE_DOWNLOAD = "download";
public static final String RESOURCE_BRICKS = "bricks";
public static final String RESOURCE_DISKS = "disks";
- public static final String RESOURCE_RUNNING_TASKS = "runningtasks";
public static final String RESOURCE_ALERTS = "alerts";
public static final String RESOURCE_SERVERS = "servers";
public static final String RESOURCE_TASKS = "tasks";
+
+ public static final String TASK_START = "start";
+ public static final String TASK_PAUSE = "pause";
+ public static final String TASK_RESUME = "resume";
+ public static final String TASK_STOP = "stop";
+ public static final String TASK_STATUS = "status";
+ public static final String TASK_DELETE = "delete";
public static final String FORM_PARAM_CLUSTER_NAME = "clusterName";
public static final String FORM_PARAM_SERVER_NAME = "serverName";
public static final String FORM_PARAM_DISKS = "disks";
public static final String FORM_PARAM_OPERATION = "operation";
- public static final String FORM_PARAM_VALUE_START = "start";
- public static final String FORM_PARAM_VALUE_STOP = "stop";
- public static final String FORM_PARAM_VALUE_PAUSE = "pause";
public static final String FORM_PARAM_VALUE_STATUS = "status";
public static final String FORM_PARAM_OPTION_KEY = "key";
public static final String FORM_PARAM_OPTION_VALUE = "value";
public static final String FORM_PARAM_SOURCE = "source";
public static final String FORM_PARAM_TARGET = "target";
public static final String FORM_PARAM_BRICKS = "bricks";
- public static final String FROM_PARAM_AUTO_COMMIT = "autoCommit";
+ public static final String FORM_PARAM_AUTO_COMMIT = "autoCommit";
public static final String PATH_PARAM_VOLUME_NAME = "volumeName";
public static final String PATH_PARAM_CLUSTER_NAME = "clusterName";
@@ -72,5 +75,4 @@ public class RESTConstants {
public static final String QUERY_PARAM_TO_TIMESTAMP = "toTimestamp";
public static final String QUERY_PARAM_DOWNLOAD = "download";
public static final String QUERY_PARAM_SERVER_NAME = "serverName";
- public static final String QUERY_PARAM_TASK_OPERATION = "taskOperation";
}
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Cluster.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Cluster.java
index adeb72dc..0c094e99 100644
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Cluster.java
+++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Cluster.java
@@ -28,7 +28,7 @@ public class Cluster extends Entity {
List<GlusterServer> servers = new ArrayList<GlusterServer>();
List<Server> discoveredServers = new ArrayList<Server>();
List<Volume> volumes = new ArrayList<Volume>();
- List<RunningTask> runningTasks = new ArrayList<RunningTask>();
+ List<TaskInfo> taskInfoList = new ArrayList<TaskInfo>();
List<Alert> alerts = new ArrayList<Alert>();
public Cluster() {
@@ -104,12 +104,16 @@ public class Cluster extends Entity {
setVolumes(volumes);
}
- public List<RunningTask> getRunningTasks() {
- return runningTasks;
+ public List<TaskInfo> getTaskInfoList() {
+ return taskInfoList;
}
- public void setRunningTasks(List<RunningTask> runningTasks) {
- this.runningTasks = runningTasks;
+ public void setTaskInfoList(List<TaskInfo> taskInfoList) {
+ this.taskInfoList = taskInfoList;
+ }
+
+ public void addTaskInfo(TaskInfo taskInfo) {
+ this.taskInfoList.add(taskInfo);
}
public List<Alert> getAlerts() {
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java
deleted file mode 100644
index 773137bb..00000000
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
- * This file is part of Gluster Management Console.
- *
- * Gluster Management Console is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License as published
- * by the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * Gluster Management Console is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see
- * <http://www.gnu.org/licenses/>.
- *******************************************************************************/
-package com.gluster.storage.management.core.model;
-
-import javax.xml.bind.annotation.XmlRootElement;
-
-@XmlRootElement
-public class RunningTask {
- public enum TASK_TYPES {
- DISK_FORMAT, BRICK_MIGRATE, VOLUME_REBALANCE
- };
-
- public String[] TASK_TYPE_STR = { "Formatting Disk", "Brick Migration", "Volume Rebalance" };
-
- protected String id;
- protected TASK_TYPES type;
- protected String reference; // Server name / Volume name / Disk name
- protected String taskInfo;
- protected RunningTaskStatus status; // TODO redefine
-
- public RunningTask() {
-
- }
-
- public String getTaskType(TASK_TYPES type) {
- return TASK_TYPE_STR[type.ordinal()];
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public TASK_TYPES getType() {
- return type;
- }
-
- public void setType(TASK_TYPES type) {
- this.type = type;
- }
-
- public String getReference() {
- return reference;
- }
-
- public void setReference(String reference) {
- this.reference = reference;
- }
-
- public String getTaskInfo() {
- return taskInfo;
- }
-
- public void setTaskInfo(String taskInfo) {
- this.taskInfo = taskInfo;
- }
-
- public RunningTaskStatus getStatus() {
- return status;
- }
-
- public void setStatus(RunningTaskStatus status) {
- this.status = status;
- }
-}
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTaskStatus.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTaskStatus.java
deleted file mode 100644
index 7ffeb4b8..00000000
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTaskStatus.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.gluster.storage.management.core.model;
-
-public class RunningTaskStatus extends Status {
-
- private String status;
- private boolean isPercentageSupported;
- private float percentCompleted;
- private String description;
-
- public String getStatus() {
- return status;
- }
-
- public void setStatus(String status) {
- this.status = status;
- }
-
- public boolean isPercentageSupported() {
- return isPercentageSupported;
- }
-
- public void setPercentageSupported(boolean isPercentageSupported) {
- this.isPercentageSupported = isPercentageSupported;
- }
-
- public float getPercentCompleted() {
- return percentCompleted;
- }
-
- public void getPercentCompleted(float percentCompleted) {
- this.percentCompleted = percentCompleted;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public String getDescription() {
- return description;
- }
-} \ No newline at end of file
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/RunningTaskListResponse.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/RunningTaskListResponse.java
deleted file mode 100644
index 73dc074a..00000000
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/RunningTaskListResponse.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package com.gluster.storage.management.core.response;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlElementWrapper;
-import javax.xml.bind.annotation.XmlRootElement;
-
-import com.gluster.storage.management.core.model.RunningTask;
-import com.gluster.storage.management.core.model.Status;
-
-@XmlRootElement(name = "response")
-public class RunningTaskListResponse extends AbstractResponse {
- private List<RunningTask> runningTasks = new ArrayList<RunningTask>();
-
- public RunningTaskListResponse() {
-
- }
-
-
- public RunningTaskListResponse(Status status, List<RunningTask> runningTasks) {
- setStatus(status);
- setRunningTasks(runningTasks);
- }
-
- @XmlElementWrapper(name = "runningTasks")
- @XmlElement(name = "runningTask", type=RunningTask.class)
- public List<RunningTask> getRunningTasks() {
- return runningTasks;
- }
-
- /**
- * @param runningTasks
- * the runningTasks to set
- */
- public void setRunningTasks(List<RunningTask> runningTasks) {
- this.runningTasks = runningTasks;
- }
-
- @Override
- public Object getData() {
- return getRunningTasks();
- }
-
-}
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/IImageKeys.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/IImageKeys.java
index d11decb6..65124bf9 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/IImageKeys.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/IImageKeys.java
@@ -51,7 +51,7 @@ public interface IImageKeys {
public static final String ARROW_UP = "icons/arrow-up.png";
public static final String ARROW_DOWN = "icons/arrow-down.png";
public static final String VOLUME_REBALANCE = "icons/volume-rebalance.png";
- public static final String DISK_MIGRATE = "icons/disk-migrate.png";
+ public static final String BRICK_MIGRATE = "icons/disk-migrate.png";
public static final String LOW_DISK_SPACE = "icons/disk.png";
public static final String DISK_OFFLINE = "icons/status-offline.png";
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/MigrateDiskWizard.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/MigrateDiskWizard.java
index 07d6e3c5..60cbd387 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/MigrateDiskWizard.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/MigrateDiskWizard.java
@@ -49,10 +49,11 @@ public class MigrateDiskWizard extends Wizard {
Disk sourceDisk = page.getSourceDisk();
Disk targetDisk = page.getTargetDisk();
+ Boolean autoCommit = true; //TODO get auto commit from user selection
// TODO add custom confirm dialog
VolumesClient volumesClient = new VolumesClient();
- volumesClient.startMigration(volume.getName(), sourceDisk.getQualifiedName(), targetDisk.getQualifiedName());
+ volumesClient.startMigration(volume.getName(), sourceDisk.getQualifiedName(), targetDisk.getQualifiedName(), autoCommit);
return true;
}
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java
index e1e25e51..ef14c197 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java
@@ -46,8 +46,8 @@ import com.gluster.storage.management.core.model.EntityGroup;
import com.gluster.storage.management.core.model.GlusterDataModel;
import com.gluster.storage.management.core.model.GlusterServer;
import com.gluster.storage.management.core.model.GlusterServer.SERVER_STATUS;
-import com.gluster.storage.management.core.model.RunningTask;
import com.gluster.storage.management.core.model.Server;
+import com.gluster.storage.management.core.model.TaskInfo;
import com.gluster.storage.management.core.model.Volume;
import com.gluster.storage.management.core.model.Volume.VOLUME_STATUS;
import com.gluster.storage.management.core.utils.NumberUtil;
@@ -276,25 +276,23 @@ public class ClusterSummaryView extends ViewPart {
private void createRunningTasksSection() {
Composite section = guiHelper.createSection(form, toolkit, "Running Tasks", null, 1, false);
- List<RunningTask> runningTasks = cluster.getRunningTasks();
-
- for (RunningTask task : runningTasks) {
- addRunningTaskLabel(section, task);
+ for (TaskInfo taskInfo : cluster.getTaskInfoList()) {
+ addTaskLabel(section, taskInfo);
}
}
- private void addRunningTaskLabel(Composite section, RunningTask task) {
- // Task related to Volumes context
+ private void addTaskLabel(Composite section, TaskInfo taskInfo) {
+ //TODO: create link and open the task progress view
CLabel lblAlert = new CLabel(section, SWT.NONE);
- lblAlert.setText(task.getTaskInfo());
+ lblAlert.setText(taskInfo.getDescription());
Image taskImage = null;
- switch(task.getType()) {
+ switch(taskInfo.getType()) {
case DISK_FORMAT:
taskImage = guiHelper.getImage(IImageKeys.DISK);
break;
case BRICK_MIGRATE:
- taskImage = guiHelper.getImage(IImageKeys.DISK_MIGRATE);
+ taskImage = guiHelper.getImage(IImageKeys.BRICK_MIGRATE);
break;
case VOLUME_REBALANCE:
taskImage = guiHelper.getImage(IImageKeys.VOLUME_REBALANCE);
diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java
index 990e569c..311014a0 100644
--- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java
+++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java
@@ -33,8 +33,10 @@ import org.eclipse.ui.part.ViewPart;
import com.gluster.storage.management.client.GlusterDataModelManager;
import com.gluster.storage.management.core.model.Alert;
+import com.gluster.storage.management.core.model.Cluster;
import com.gluster.storage.management.core.model.EntityGroup;
-import com.gluster.storage.management.core.model.RunningTask;
+import com.gluster.storage.management.core.model.Task.TASK_TYPE;
+import com.gluster.storage.management.core.model.TaskInfo;
import com.gluster.storage.management.core.model.Volume;
import com.gluster.storage.management.core.model.Volume.VOLUME_STATUS;
import com.gluster.storage.management.gui.IImageKeys;
@@ -50,6 +52,7 @@ public class VolumesSummaryView extends ViewPart {
private final FormToolkit toolkit = new FormToolkit(Display.getCurrent());
private ScrolledForm form;
private EntityGroup<Volume> volumes;
+ private Cluster cluster = GlusterDataModelManager.getInstance().getModel().getCluster();
private static final String ALERTS = "Alerts";
private static final String RUNNING_TASKS = "Running Tasks";
@@ -88,9 +91,8 @@ public class VolumesSummaryView extends ViewPart {
private void createAlertsSection() {
Composite section = guiHelper.createSection(form, toolkit, ALERTS, null, 1, false);
- List<Alert> alerts = GlusterDataModelManager.getInstance().getModel().getCluster().getAlerts();
- for (Alert alert : alerts) {
+ for (Alert alert : cluster.getAlerts()) {
addAlertLabel(section, alert);
}
}
@@ -108,25 +110,23 @@ public class VolumesSummaryView extends ViewPart {
private void createRunningTasksSection() {
Composite section = guiHelper.createSection(form, toolkit, RUNNING_TASKS, null, 1, false);
- List<RunningTask> runningTasks = GlusterDataModelManager.getInstance().getModel().getCluster()
- .getRunningTasks();
-
- for (RunningTask task : runningTasks) {
- addRunningTaskLabel(section, task);
+ for (TaskInfo taskInfo : cluster.getTaskInfoList()) {
+ if (taskInfo.getType() == TASK_TYPE.BRICK_MIGRATE || taskInfo.getType() == TASK_TYPE.VOLUME_REBALANCE)
+ addTaskLabel(section, taskInfo);
}
}
- private void addRunningTaskLabel(Composite section, RunningTask task) {
+ private void addTaskLabel(Composite section, TaskInfo taskInfo) {
// Task related to Volumes context
- if (task.getType() == RunningTask.TASK_TYPES.BRICK_MIGRATE
- || task.getType() == RunningTask.TASK_TYPES.VOLUME_REBALANCE) {
- if (task.getStatus().isPercentageSupported()) {
- // TODO Progress bar
+ if (taskInfo.getType() == TASK_TYPE.BRICK_MIGRATE
+ || taskInfo.getType() == TASK_TYPE.VOLUME_REBALANCE) {
+ if (taskInfo.getStatus().isPercentageSupported()) {
+ // TODO Progress bar or link to progress view
}
CLabel lblAlert = new CLabel(section, SWT.NONE);
- lblAlert.setText(task.getTaskInfo());
- lblAlert.setImage((task.getType() == RunningTask.TASK_TYPES.BRICK_MIGRATE) ? guiHelper
- .getImage(IImageKeys.DISK_MIGRATE) : guiHelper.getImage(IImageKeys.VOLUME_REBALANCE));
+ lblAlert.setText(taskInfo.getDescription());
+ lblAlert.setImage((taskInfo.getType() == TASK_TYPE.BRICK_MIGRATE) ? guiHelper
+ .getImage(IImageKeys.BRICK_MIGRATE) : guiHelper.getImage(IImageKeys.VOLUME_REBALANCE));
lblAlert.redraw();
}
}
@@ -145,7 +145,6 @@ public class VolumesSummaryView extends ViewPart {
createStatusChart(toolkit, section, values);
}
- @SuppressWarnings("unchecked")
private int getVolumeCountByStatus(EntityGroup<Volume> volumes, VOLUME_STATUS status) {
int count = 0;
for (Volume volume : (List<Volume>) volumes.getEntities()) {
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java
deleted file mode 100644
index c9eb0ecd..00000000
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
- * This file is part of Gluster Management Console.
- *
- * Gluster Management Console is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License as published
- * by the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * Gluster Management Console is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see
- * <http://www.gnu.org/licenses/>.
- *******************************************************************************/
-package com.gluster.storage.management.server.resources;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import javax.ws.rs.FormParam;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-
-import org.springframework.stereotype.Component;
-
-import static com.gluster.storage.management.core.constants.RESTConstants.*;
-import com.gluster.storage.management.core.model.Response;
-import com.gluster.storage.management.core.model.RunningTask;
-import com.gluster.storage.management.core.model.RunningTaskStatus;
-import com.gluster.storage.management.core.model.Status;
-import com.gluster.storage.management.core.response.RunningTaskListResponse;
-import com.gluster.storage.management.core.utils.StringUtil;
-import com.gluster.storage.management.server.runningtasks.managers.RunningTaskManager;
-
-@Component
-@Path(RESOURCE_PATH_CLUSTERS + "/{" + PATH_PARAM_CLUSTER_NAME + "}/" + RESOURCE_RUNNING_TASKS)
-public class RunningTaskResource {
-
- private static final String PKG = "com.gluster.storage.management.server.runningtasks.managers";
- private static final String MANAGER = "Manager";
-
- @GET
- @Produces(MediaType.TEXT_XML)
- public RunningTaskListResponse getRunningTasks() {
-
- RunningTaskStatus taskStatus = new RunningTaskStatus();
- List<RunningTask> runningTasks = new ArrayList<RunningTask>();
-
- taskStatus.setCode(Status.STATUS_CODE_RUNNING);
- taskStatus.setPercentageSupported(false);
-
- // Volume rebalance
- RunningTask task = new RunningTask();
- task.setId("0001");
- task.setType(RunningTask.TASK_TYPES.VOLUME_REBALANCE);
- task.setReference("Volume1");
- task.setTaskInfo(task.getTaskType(task.getType()) + " on [" + task.getReference() + "]");
- task.setStatus(taskStatus);
- runningTasks.add(task);
-
- task = new RunningTask();
- task.setId("0002");
- task.setType(RunningTask.TASK_TYPES.VOLUME_REBALANCE);
- task.setReference("Volume2");
- task.setTaskInfo(task.getTaskType(task.getType()) + " on [" + task.getReference() + "]");
- task.setStatus(taskStatus);
- runningTasks.add(task);
-
- // MigrateDisk
- task = new RunningTask();
- task.setId("0003");
- task.setType(RunningTask.TASK_TYPES.BRICK_MIGRATE);
- task.setReference("Volume3:server1:sda1"); // Disk reference
- task.setTaskInfo(task.getTaskType(task.getType()) + " for volume [" + task.getReference().split(":")[0]
- + "] brick [" + task.getReference().split(":")[1] + ":" + task.getReference().split(":")[2] + "]");
- task.setStatus(taskStatus);
- runningTasks.add(task);
-
- // FormatDisk
- task = new RunningTask();
- task.setId("0004");
- task.setType(RunningTask.TASK_TYPES.DISK_FORMAT);
- task.setReference("server1:sdb1"); // Disk reference
- task.setTaskInfo(task.getTaskType(task.getType()) + " [" + task.getReference() + "]");
- taskStatus.setPercentageSupported(true);
- taskStatus.getPercentCompleted(45);
- task.setStatus(taskStatus);
- runningTasks.add(task);
-
- return new RunningTaskListResponse(Status.STATUS_SUCCESS, runningTasks);
- }
-
- @SuppressWarnings("rawtypes")
- public Response startTask(@FormParam("taskType") RunningTask.TASK_TYPES taskType) {
- String taskTypeStr = StringUtil.removeSpaces(new RunningTask().getTaskType(taskType));
- String managerClassName = PKG + "." + taskTypeStr + MANAGER;
-
- Class managerClass;
- RunningTaskManager manager = null;
- try {
- managerClass = Class.forName(managerClassName);
- manager = (RunningTaskManager) managerClass.newInstance();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (InstantiationException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- }
-
- // TODO: set form params on the manager
- Map params = null;
- manager.setFormParams(params);
- manager.start();
- return null;
- }
-
- // TODO Remove the test script for production
- public static void main(String[] args) {
- RunningTaskResource rt = new RunningTaskResource();
- RunningTaskListResponse tasks = rt.getRunningTasks();
- List<RunningTask> runningTasks = tasks.getRunningTasks();
- for (RunningTask x : runningTasks) {
- System.out.println(x.getId() + " : " + x.getType() + " : " + x.getTaskInfo());
- }
- }
-}
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/TasksResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/TasksResource.java
index 0fc69623..fe9a7763 100644
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/TasksResource.java
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/TasksResource.java
@@ -22,7 +22,7 @@ package com.gluster.storage.management.server.resources;
import static com.gluster.storage.management.core.constants.RESTConstants.PATH_PARAM_CLUSTER_NAME;
import static com.gluster.storage.management.core.constants.RESTConstants.PATH_PARAM_TASK_ID;
-import static com.gluster.storage.management.core.constants.RESTConstants.QUERY_PARAM_TASK_OPERATION;
+import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_OPERATION;
import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_PATH_CLUSTERS;
import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_TASKS;
@@ -32,6 +32,7 @@ import java.util.List;
import java.util.Map;
import javax.ws.rs.DELETE;
+import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
@@ -40,6 +41,7 @@ import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
+import com.gluster.storage.management.core.constants.RESTConstants;
import com.gluster.storage.management.core.exceptions.GlusterRuntimeException;
import com.gluster.storage.management.core.model.Status;
import com.gluster.storage.management.core.model.Task;
@@ -65,6 +67,14 @@ public class TasksResource {
tasksMap.remove(task.getId());
}
+ public List<TaskInfo> getAllTasksInfo() {
+ List<TaskInfo> allTasksInfo = new ArrayList<TaskInfo>();
+ for (Map.Entry<String, Task> entry : tasksMap.entrySet()) {
+ allTasksInfo.add(entry.getValue().getTaskInfo());
+ }
+ return allTasksInfo;
+ }
+
public List<Task> getAllTasks() {
List<Task> allTasks = new ArrayList<Task>();
for (Map.Entry<String, Task> entry : tasksMap.entrySet()) {
@@ -86,12 +96,8 @@ public class TasksResource {
@Produces(MediaType.TEXT_XML)
public TaskListResponse getTasks() {
TaskListResponse taskListResponse = new TaskListResponse();
- List<TaskInfo> taskInfoList = new ArrayList<TaskInfo>();
try {
- for (Task task : getAllTasks()) {
- taskInfoList.add(task.getTaskInfo());
- }
- taskListResponse.setData(taskInfoList);
+ taskListResponse.setData(getAllTasksInfo());
taskListResponse.setStatus(new Status(Status.STATUS_CODE_SUCCESS, ""));
} catch (GlusterRuntimeException e) {
taskListResponse.setStatus(new Status(e));
@@ -103,19 +109,19 @@ public class TasksResource {
@Path("/{" + PATH_PARAM_TASK_ID + "}")
@Produces(MediaType.TEXT_XML)
public TaskResponse performTask(@PathParam(PATH_PARAM_TASK_ID) String taskId,
- @QueryParam(QUERY_PARAM_TASK_OPERATION) String taskOperation) {
+ @FormParam(FORM_PARAM_OPERATION) String taskOperation) {
Task task = getTask(taskId);
TaskInfo taskInfo = null;
TaskResponse taskResponse = new TaskResponse();
try {
- if (taskOperation.equals("resume")) {
+ if (taskOperation.equals(RESTConstants.TASK_RESUME)) {
taskInfo = task.resume();
}
- if (taskOperation.equals("pause")) {
+ if (taskOperation.equals(RESTConstants.TASK_PAUSE)) {
taskInfo = task.pause();
}
- if (taskOperation.equals("stop")) {
+ if (taskOperation.equals(RESTConstants.TASK_STOP)) {
taskInfo = task.stop();
}
taskResponse.setData(taskInfo);
@@ -130,7 +136,7 @@ public class TasksResource {
@Path("/{" + PATH_PARAM_TASK_ID + "}")
@Produces(MediaType.TEXT_XML)
public TaskResponse deleteTask(@PathParam(PATH_PARAM_TASK_ID) String taskId,
- @QueryParam(QUERY_PARAM_TASK_OPERATION) String taskOperation) {
+ @QueryParam(FORM_PARAM_OPERATION) String taskOperation) {
TaskResponse taskResponse = new TaskResponse();
Task task = getTask(taskId);
if (task == null) {
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 0d33e5b0..76432b3f 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
@@ -24,9 +24,9 @@ import static com.gluster.storage.management.core.constants.RESTConstants.FORM_P
import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_OPERATION;
import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_SOURCE;
import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_TARGET;
-import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_VALUE_START;
-import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_VALUE_STOP;
-import static com.gluster.storage.management.core.constants.RESTConstants.FROM_PARAM_AUTO_COMMIT;
+import static com.gluster.storage.management.core.constants.RESTConstants.TASK_START;
+import static com.gluster.storage.management.core.constants.RESTConstants.TASK_STOP;
+import static com.gluster.storage.management.core.constants.RESTConstants.FORM_PARAM_AUTO_COMMIT;
import static com.gluster.storage.management.core.constants.RESTConstants.PATH_PARAM_CLUSTER_NAME;
import static com.gluster.storage.management.core.constants.RESTConstants.PATH_PARAM_VOLUME_NAME;
import static com.gluster.storage.management.core.constants.RESTConstants.QUERY_PARAM_BRICKS;
@@ -220,9 +220,9 @@ public class VolumesResource {
}
private Status performOperation(String volumeName, String operation, GlusterServer onlineServer) {
- if (operation.equals(FORM_PARAM_VALUE_START)) {
+ if (operation.equals(TASK_START)) {
return glusterUtil.startVolume(volumeName, onlineServer.getName());
- } else if (operation.equals(FORM_PARAM_VALUE_STOP)) {
+ } else if (operation.equals(TASK_STOP)) {
return glusterUtil.stopVolume(volumeName, onlineServer.getName());
} else {
return new Status(Status.STATUS_CODE_FAILURE, "Invalid operation code [" + operation + "]");
@@ -648,7 +648,7 @@ public class VolumesResource {
@Path("{" + PATH_PARAM_VOLUME_NAME + "}/" + RESOURCE_BRICKS)
public TaskResponse migrateBrick(@PathParam(PATH_PARAM_CLUSTER_NAME) String clusterName,
@PathParam(PATH_PARAM_VOLUME_NAME) String volumeName, @FormParam(FORM_PARAM_SOURCE) String fromBrick,
- @FormParam(FORM_PARAM_TARGET) String toBrick, @FormParam(FROM_PARAM_AUTO_COMMIT) Boolean autoCommit) {
+ @FormParam(FORM_PARAM_TARGET) String toBrick, @FormParam(FORM_PARAM_AUTO_COMMIT) Boolean autoCommit) {
TaskResponse taskResponse = new TaskResponse();
GlusterServer onlineServer = glusterServersResource.getOnlineServer(clusterName);
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/FormatDiskManager.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/FormatDiskManager.java
deleted file mode 100644
index 37cc22f6..00000000
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/FormatDiskManager.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
- * This file is part of Gluster Management Console.
- *
- * Gluster Management Console is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License as published
- * by the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * Gluster Management Console is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see
- * <http://www.gnu.org/licenses/>.
- *******************************************************************************/
-package com.gluster.storage.management.server.runningtasks.managers;
-
-import java.util.Map;
-
-import com.gluster.storage.management.core.model.Status;
-import com.gluster.storage.management.core.model.RunningTaskStatus;
-
-public class FormatDiskManager implements RunningTaskManager {
-
-
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus start() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus stop() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus pause() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus resume() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void setFormParams(Map params) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public RunningTaskStatus getStatus() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/MigrateDiskManager.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/MigrateDiskManager.java
deleted file mode 100644
index 97916abe..00000000
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/MigrateDiskManager.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.gluster.storage.management.server.runningtasks.managers;
-
-import java.util.Map;
-
-import com.gluster.storage.management.core.model.RunningTaskStatus;
-
-public class MigrateDiskManager implements RunningTaskManager {
-
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus start() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus stop() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus pause() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus resume() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void setFormParams(Map params) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public RunningTaskStatus getStatus() {
- // TODO Auto-generated method stub
- return null;
- }
-}
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/RunningTaskManager.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/RunningTaskManager.java
deleted file mode 100755
index a21c6b81..00000000
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/RunningTaskManager.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
- * This file is part of Gluster Management Console.
- *
- * Gluster Management Console is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Affero General Public License as published
- * by the Free Software Foundation; either version 3 of the License, or
- * (at your option) any later version.
- *
- * Gluster Management Console is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see
- * <http://www.gnu.org/licenses/>.
- *******************************************************************************/
-
-package com.gluster.storage.management.server.runningtasks.managers;
-
-import java.util.Map;
-
-import com.gluster.storage.management.core.model.Status;
-import com.gluster.storage.management.core.model.RunningTaskStatus;
-
-public interface RunningTaskManager {
-
- public String getId();
-
- public RunningTaskStatus start();
-
- public RunningTaskStatus stop();
-
- public RunningTaskStatus pause();
-
- public RunningTaskStatus resume();
-
- public RunningTaskStatus getStatus();
-
- @SuppressWarnings("rawtypes")
- public void setFormParams(Map params);
-
-}
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/VolumeRebalanceManager.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/VolumeRebalanceManager.java
deleted file mode 100644
index 01a5dc25..00000000
--- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/runningtasks/managers/VolumeRebalanceManager.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.gluster.storage.management.server.runningtasks.managers;
-
-import java.util.Map;
-
-import com.gluster.storage.management.core.model.RunningTaskStatus;
-
-public class VolumeRebalanceManager implements RunningTaskManager {
-
- @Override
- public String getId() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus start() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus stop() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus pause() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public RunningTaskStatus resume() {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void setFormParams(Map params) {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public RunningTaskStatus getStatus() {
- // TODO Auto-generated method stub
- return null;
- }
-}