diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java | 14 |
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) { |
