summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.server
diff options
context:
space:
mode:
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/AlertsResource.java69
-rw-r--r--src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java32
2 files changed, 86 insertions, 15 deletions
diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java
new file mode 100644
index 00000000..e9fbe253
--- /dev/null
+++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java
@@ -0,0 +1,69 @@
+package com.gluster.storage.management.server.resources;
+
+import static com.gluster.storage.management.core.constants.RESTConstants.RESOURCE_PATH_ALERTS;
+
+import java.util.ArrayList;
+import java.util.List;
+
+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 com.gluster.storage.management.core.model.AlertListResponse;
+import com.gluster.storage.management.core.model.Alert;
+
+@Component
+@Path(RESOURCE_PATH_ALERTS)
+public class AlertsResource {
+
+ @GET
+ @Produces(MediaType.TEXT_XML)
+ public AlertListResponse getAlerts() {
+
+ List<Alert> alerts = new ArrayList<Alert>();
+
+ // TODO To implement the following dummy alerts
+ // Alert #1
+ Alert alert = new Alert();
+ alert.setId("0001");
+ alert.setReference("Server1"); // Server
+ alert.setType(Alert.ALERT_TYPES.CPU_ALERT);
+ alert.setMessage(alert.getAlertType(alert.getType()) + " in server: " + alert.getReference());
+ alerts.add(alert);
+
+ // Alert #2
+ alert = new Alert();
+ alert.setId("0002");
+ alert.setReference("Server2"); // server:Disk - brick
+ alert.setType(Alert.ALERT_TYPES.MEMORY_ALERT);
+ alert.setMessage(alert.getAlertType(alert.getType()) + " in server: " + alert.getReference());
+ alerts.add(alert);
+
+ // Alert #3
+ alert = new Alert();
+ alert.setId("0003");
+ alert.setReference("Volume1"); // Volume name
+ alert.setType(Alert.ALERT_TYPES.DISK_ALERT);
+ alert.setMessage(alert.getAlertType(alert.getType()) + " in volume: " + alert.getReference());
+ alerts.add(alert);
+
+ return new AlertListResponse(alerts);
+
+ }
+
+ public static void main(String[] args) {
+ /*
+ // Unit test code
+ AlertsResource alertResource = new AlertsResource();
+ AlertsListResponse alertResponse = alertResource.getAlerts();
+ List<Alert> alerts = alertResponse.getAlerts();
+ for (Alert alert: alerts) {
+ System.out.println(alert.getMessage());
+ }
+ */
+ }
+
+}
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
index 2cec4c36..35bbaa95 100644
--- 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
@@ -55,36 +55,35 @@ public class RunningTaskResource {
// Volume rebalance
RunningTask task = new RunningTask();
task.setId("0001");
- task.setType("VolumeRebalance");
- task.setReference("");
- task.setDescription("Volume [Volume1] rebalance is running");
+ task.setType(RunningTask.TASK_TYPES.VOLUME_REBALANCE);
+ task.setReference("Volume1");
+ task.setDescription("Volume [" + task.getReference() + "] rebalance is running");
task.setStatus(status);
runningTasks.add(task);
task = new RunningTask();
task.setId("0002");
- task.setType("VolumeRebalance");
- task.setReference("");
- task.setDescription("Volume [Volume2] rebalance is running");
- //task.setDescription("Error: volume rebalance operation failed at fd 0000 [/export/test-song-volume/mydirectory/test-video.avi");
+ task.setType(RunningTask.TASK_TYPES.VOLUME_REBALANCE);
+ task.setReference("Volume2");
+ task.setDescription("Volume [" + task.getReference() + "] rebalance is running");
task.setStatus(status);
runningTasks.add(task);
// MigrateDisk
task = new RunningTask();
task.setId("0003");
- task.setType("MigrateDisk");
- task.setReference("");
- task.setDescription("Disk migration [Volume3/sda] is running");
+ task.setType(RunningTask.TASK_TYPES.MIGRATE_DISK);
+ task.setReference("Volume3/sda");
+ task.setDescription("Disk migration [" + task.getReference() + "] is running");
task.setStatus(status);
runningTasks.add(task);
// FormatDisk
task = new RunningTask();
task.setId("0004");
- task.setType("FormatDisk");
- task.setReference("");
- task.setDescription("Volume [vol1] rebalance is running");
+ task.setType(RunningTask.TASK_TYPES.FORMAT_DISK);
+ task.setReference("vol1");
+ task.setDescription("Volume [" + task.getReference() + "] rebalance is running");
status.setPercentageSupported(true);
status.getPercentCompleted(45);
task.setStatus(status);
@@ -93,8 +92,11 @@ public class RunningTaskResource {
}
@SuppressWarnings("rawtypes")
- public Response startTask(@FormParam("taskType") String taskType) {
- String managerClassName = "com.gluster.storage.management.server.runningtasks.managers." + taskType + "Manager";
+ public Response startTask(@FormParam("taskType") RunningTask.TASK_TYPES taskType) {
+
+ String taskTypeStr = new RunningTask().getTaskType(taskType).replaceAll("\\s+", "");
+ String managerClassName = "com.gluster.storage.management.server.runningtasks.managers." + taskTypeStr + "Manager";
+
Class managerClass;
RunningTaskManager manager = null;
try {