summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-11-10 12:38:29 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-11-10 12:46:57 +0530
commit28abb30b146c3cc64b4ad75593e5f3960b35cec4 (patch)
treeb6c13d19a5b440cb0a48e6162c4fee79dd7f8778
parent0dd987f2af100ae5879d31eb1459b8317caaf4f1 (diff)
Modified to fire correct events to listeners on start/stop volume.
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/GlusterDataModelManager.java4
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StartVolumeAction.java5
-rw-r--r--src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StopVolumeAction.java6
3 files changed, 8 insertions, 7 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 a6daee79..68d338f2 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
@@ -758,6 +758,9 @@ public class GlusterDataModelManager {
for(Brick brick : volume.getBricks()) {
brick.setStatus(BRICK_STATUS.OFFLINE);
}
+ for (ClusterListener listener : listeners) {
+ listener.volumeChanged(volume, new Event(EVENT_TYPE.BRICKS_CHANGED, volume.getBricks()));
+ }
} else {
Volume newVolume = new VolumesClient().getVolume(volume.getName()); //Getting latest brick info
updateBricks(volume, volume.getBricks(), newVolume.getBricks());
@@ -765,7 +768,6 @@ public class GlusterDataModelManager {
for (ClusterListener listener : listeners) {
listener.volumeChanged(volume, new Event(EVENT_TYPE.VOLUME_STATUS_CHANGED, newStatus));
- listener.volumeChanged(volume, new Event(EVENT_TYPE.BRICKS_CHANGED, volume.getBricks()));
}
}
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StartVolumeAction.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StartVolumeAction.java
index d82ab62f..a0fc2331 100644
--- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StartVolumeAction.java
+++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StartVolumeAction.java
@@ -91,6 +91,7 @@ public class StartVolumeAction extends AbstractMonitoredActionDelegate {
try {
monitor.setTaskName("Starting volume [" + volume.getName() + "]");
vc.startVolume(volume.getName(), false);
+ modelManager.updateVolumeStatus(volume, VOLUME_STATUS.ONLINE);
startedVolumes.add(volume.getName());
} catch (Exception e) {
failedVolumes.add(volume.getName());
@@ -100,10 +101,10 @@ public class StartVolumeAction extends AbstractMonitoredActionDelegate {
}
errorMessage += e.getMessage() + CoreConstants.NEWLINE;
}
+
// Update the model by fetching latest volume info (NOT JUST STATUS)
try {
- newVolume = vc.getVolume(volume.getName());
- modelManager.volumeChanged(volume, newVolume);
+ modelManager.refreshVolumeData(volume);
} catch (Exception e) {
errorMessage += "Updating volume info failed on UI. [" + e.getMessage() + "]";
}
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StopVolumeAction.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StopVolumeAction.java
index d4ab0452..85103963 100644
--- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StopVolumeAction.java
+++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/StopVolumeAction.java
@@ -155,8 +155,8 @@ public class StopVolumeAction extends AbstractMonitoredActionDelegate {
try {
monitor.setTaskName("Stopping volume [" + volume.getName() + "]");
vc.stopVolume(volume.getName(), force);
- // modelManager.updateVolumeStatus(volume, VOLUME_STATUS.OFFLINE);
stoppedVolumes.add(volume.getName());
+ modelManager.updateVolumeStatus(volume, VOLUME_STATUS.OFFLINE);
} catch (Exception e) {
// If any post volume stop activity failed, update the volume status
if (vc.getVolume(volume.getName()).getStatus() == VOLUME_STATUS.OFFLINE) {
@@ -169,13 +169,11 @@ public class StopVolumeAction extends AbstractMonitoredActionDelegate {
failedVolumes.add(volume);
errorMessage += "[" + volume.getName() + "] : " + e.getMessage() + CoreConstants.NEWLINE;
}
-
}
// Update the model by fetching latest volume info (NOT JUST STATUS)
try {
- newVolume = vc.getVolume(volume.getName());
- modelManager.volumeChanged(volume, newVolume);
+ modelManager.refreshVolumeData(volume);
} catch (Exception e) {
errorMessage += "Failed to update volume info on UI. [" + e.getMessage() + "]";
}