diff options
| author | Selvam <selvam@gluster.com> | 2011-03-30 18:02:08 +0530 |
|---|---|---|
| committer | Selvam <selvam@gluster.com> | 2011-03-30 18:02:08 +0530 |
| commit | f30c67deb0b525911d1f3d891574e808ef3068b1 (patch) | |
| tree | e770801e9f225ecf7aeef40e0e3b8fef53c00cf1 /src/com.gluster.storage.management.gui | |
| parent | 5c39a47fdd3987bb5eee35f7f7397ce127c8919e (diff) | |
Alerts section in volumes summary page
Diffstat (limited to 'src/com.gluster.storage.management.gui')
| -rw-r--r-- | src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java | 53 |
1 files changed, 32 insertions, 21 deletions
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 9477e170..e770cb73 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 @@ -31,9 +31,11 @@ import org.eclipse.ui.forms.widgets.ScrolledForm; import org.eclipse.ui.part.ViewPart; import com.gluster.storage.management.core.constants.CoreConstants; +import com.gluster.storage.management.core.model.Alert; import com.gluster.storage.management.core.model.EntityGroup; import com.gluster.storage.management.core.model.Cluster; import com.gluster.storage.management.core.model.GlusterDataModel; +import com.gluster.storage.management.core.model.RunningTaskStatus; import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.core.model.RunningTask; import com.gluster.storage.management.core.model.Volume; @@ -61,10 +63,10 @@ public class VolumesSummaryView extends ViewPart { if (volumes == null) { Object selectedObj = guiHelper.getSelectedEntity(getSite(), EntityGroup.class); if (selectedObj != null && ((EntityGroup) selectedObj).getEntityType() == Volume.class) { - volumes = (EntityGroup<Volume>)selectedObj; + volumes = (EntityGroup<Volume>) selectedObj; } } - + createSections(parent); } @@ -73,43 +75,52 @@ public class VolumesSummaryView extends ViewPart { createSummarySection(); createRunningTasksSection(); createAlertsSection(); - + parent.layout(); // IMP: lays out the form properly } - + private void createAlertsSection() { - Composite section = guiHelper.createSection(form, toolkit, "Alerts", null, 2, false); + Composite section = guiHelper.createSection(form, toolkit, "Alerts", null, 1, false); + // toolkit.createLabel(section, "Any alerts related to volumes\nwill be displayed here."); + + Cluster cluster = (Cluster) GlusterDataModelManager.getInstance().getModel().getChildren().get(0); + List<Alert> alerts = cluster.getAlerts(); + for (Alert alert : alerts) { + if (alert.getType() == Alert.ALERT_TYPES.DISK_ALERT) { + toolkit.createLabel(section, alert.getMessage()); + } + } - toolkit.createLabel(section, "Any alerts related to volumes\nwill be displayed here."); } private void createRunningTasksSection() { - Composite section = guiHelper.createSection(form, toolkit, "Running Tasks", null, 2, false); - - GlusterDataModelManager modelManager = GlusterDataModelManager.getInstance(); - GlusterDataModel model = modelManager.getModel(); - Cluster cluster = (Cluster) model.getChildren().get(0); // Assume the first/root node of the model is cluster (invisible) - + Composite section = guiHelper.createSection(form, toolkit, "Running Tasks", null, 1, false); + + Cluster cluster = (Cluster) GlusterDataModelManager.getInstance().getModel().getChildren().get(0); List<RunningTask> runningTasks = cluster.getRunningTasks(); - String taskMessage = ""; - for(RunningTask task : runningTasks) { - if (task.getStatus().isPercentageSupported()) { - //TODO Progress bar + + for (RunningTask task : runningTasks) { + if (task.getType() == RunningTask.TASK_TYPES.MIGRATE_DISK + || task.getType() == RunningTask.TASK_TYPES.VOLUME_REBALANCE) { + if (task.getStatus().isPercentageSupported()) { + // TODO Progress bar + } + toolkit.createLabel(section, task.getDescription()); } - //TODO show different labels for each task - taskMessage = taskMessage + CoreConstants.NEWLINE + task.getDescription(); } - toolkit.createLabel(section, taskMessage); } private void createSummarySection() { Composite section = guiHelper.createSection(form, toolkit, "Availability", null, 2, false); + GlusterDataModel model = GlusterDataModelManager.getInstance().getModel(); + Cluster cluster = (Cluster) model.getChildren().get(0); + Double[] values = new Double[] { Double.valueOf(getVolumeCountByStatus(volumes, VOLUME_STATUS.ONLINE)), Double.valueOf(getVolumeCountByStatus(volumes, VOLUME_STATUS.OFFLINE)) }; createStatusChart(toolkit, section, values); } - + private int getVolumeCountByStatus(EntityGroup<Volume> volumes, VOLUME_STATUS status) { int count = 0; for (Volume volume : (List<Volume>) volumes.getEntities()) { @@ -130,7 +141,7 @@ public class VolumesSummaryView extends ViewPart { data.heightHint = 250; chartViewerComposite.setLayoutData(data); } - + /* * (non-Javadoc) * |
