summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSelvasundaram <selvam@gluster.com>2011-08-07 19:56:15 +0530
committerSelvasundaram <selvam@gluster.com>2011-08-07 19:56:15 +0530
commit9c559312b8e7d72963723533affb3889b2ca1aef (patch)
tree3f908a61f5dbc5f8eb8d24884af33fb1e4aa87ea /src
parentc61b6300cb55cf186a4a01d0a8316c12e8556e82 (diff)
Bug 3228 - performing multiple tasks on same volume and clearing the completed tasks throws error - fix
Diffstat (limited to 'src')
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java
index 61895c54..5e8e5325 100644
--- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java
+++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java
@@ -810,12 +810,26 @@ public class GlusterDataModelManager {
public void addTask(TaskInfo taskInfo) {
Cluster cluster = model.getCluster();
+ // To avoid duplicate task, Remove if already exist
+ TaskInfo existingTaskInfo = getTask(taskInfo.getName());
+ if (getTask(taskInfo.getName()) != null) {
+ removeTask(existingTaskInfo);
+ }
cluster.addTaskInfo(taskInfo);
for (ClusterListener listener : listeners) {
listener.taskAdded(taskInfo);
}
}
+ public TaskInfo getTask(String taskId) {
+ for (TaskInfo taskInfo: model.getCluster().getTaskInfoList()) {
+ if (taskInfo.getName().equals(taskId)) {
+ return taskInfo;
+ }
+ }
+ return null;
+ }
+
// Updating the Task
public void updateTask(TaskInfo taskInfo) {
for (ClusterListener listener : listeners) {