summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.server
diff options
context:
space:
mode:
authorSelvasundaram <selvam@gluster.com>2011-06-20 15:55:58 +0530
committerSelvasundaram <selvam@gluster.com>2011-06-20 15:55:58 +0530
commitd61fa3b93293c6323c29006c97a88968fa2843bf (patch)
tree69db976e010cf75df6a62eca048c13d15a6f2d51 /src/com.gluster.storage.management.server
parent3f6d3b17750bdb9b136a4fe2a34611090b1da8bb (diff)
Task clients and migrate disk UI updates in the summary views
Diffstat (limited to 'src/com.gluster.storage.management.server')
-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.java14
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java8
-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
7 files changed, 13 insertions, 358 deletions
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..8c71c41a 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
@@ -65,6 +65,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 +94,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));
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..41359253 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,8 +24,8 @@ 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.TASK_START;
+import static com.gluster.storage.management.core.constants.RESTConstants.TASK_STOP;
import static com.gluster.storage.management.core.constants.RESTConstants.FROM_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;
@@ -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 + "]");
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;
- }
-}