diff options
author | Shireesh Anjal <shireesh@gluster.com> | 2011-11-10 12:38:29 +0530 |
---|---|---|
committer | Shireesh Anjal <shireesh@gluster.com> | 2011-11-10 12:46:57 +0530 |
commit | 28abb30b146c3cc64b4ad75593e5f3960b35cec4 (patch) | |
tree | b6c13d19a5b440cb0a48e6162c4fee79dd7f8778 /src/com.gluster.storage.management.console/src | |
parent | 0dd987f2af100ae5879d31eb1459b8317caaf4f1 (diff) |
Modified to fire correct events to listeners on start/stop volume.
Diffstat (limited to 'src/com.gluster.storage.management.console/src')
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() + "]"; } |