From 77ca079aa153281e915f899c96f4763537aac6dc Mon Sep 17 00:00:00 2001 From: Dhandapani Date: Thu, 21 Jul 2011 16:06:47 +0530 Subject: Bug 3204 - Total Disk Space showing 0.00 GB --- .../storage/management/core/model/Disk.java | 44 ++++++++++++++++++++++ .../management/gui/views/VolumeSummaryView.java | 18 ++++++--- 2 files changed, 57 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Disk.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Disk.java index d6d3f7af..d464ee9e 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Disk.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Disk.java @@ -146,4 +146,48 @@ public class Disk extends Device { setSpace(newDisk.getSpace()); setSpaceInUse(newDisk.getSpaceInUse()); } + + @Override + public boolean isReady() { + if (hasPartitions()) { + for (Partition partition : getPartitions()) { + if (partition.isReady()) { + return true; + } + } + return false; + } else { + return super.isReady(); + } + } + + @Override + public Double getSpace() { + Double space = 0d; + if (hasPartitions()) { + for (Partition partition : getPartitions()) { + if (partition.isReady()) { + space += partition.getSpace(); + } + } + return space; + } else { + return super.getSpace(); + } + } + + @Override + public Double getSpaceInUse() { + Double spaceInUse = 0d; + if (hasPartitions()) { + for (Partition partition : getPartitions()) { + if (partition.isReady()) { + spaceInUse += partition.getSpaceInUse(); + } + } + return spaceInUse; + } else { + return super.getSpaceInUse(); + } + } } \ No newline at end of file diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java index ead83275..45d76638 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java @@ -4,7 +4,6 @@ import java.net.MalformedURLException; import java.net.URL; import java.util.ArrayList; import java.util.List; -import java.util.Map.Entry; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.fieldassist.ControlDecoration; @@ -40,10 +39,9 @@ import com.gluster.storage.management.core.model.Cluster; import com.gluster.storage.management.core.model.DefaultClusterListener; import com.gluster.storage.management.core.model.Disk; import com.gluster.storage.management.core.model.Event; -import com.gluster.storage.management.core.model.Event.EVENT_TYPE; import com.gluster.storage.management.core.model.GlusterServer; import com.gluster.storage.management.core.model.GlusterServer.SERVER_STATUS; -import com.gluster.storage.management.core.model.Status; +import com.gluster.storage.management.core.model.Partition; import com.gluster.storage.management.core.model.Volume; import com.gluster.storage.management.core.model.Volume.NAS_PROTOCOL; import com.gluster.storage.management.core.model.Volume.VOLUME_TYPE; @@ -404,13 +402,23 @@ public class VolumeSummaryView extends ViewPart { }); } - private double getDiskSize(String serverName, String diskName) { + private double getDiskSize(String serverName, String deviceName) { double diskSize = 0; GlusterServer server = cluster.getServer(serverName); if (server.getStatus() == SERVER_STATUS.ONLINE) { for (Disk disk : server.getDisks()) { - if (disk.getName().equals(diskName)) { + if (disk.getName().equals(deviceName)) { diskSize = disk.getSpace(); + break; + } + + if (disk.hasPartitions()) { + for (Partition partition : disk.getPartitions()) { + if (partition.getName().equals(deviceName)) { + diskSize = partition.getSpace(); + break; + } + } } } } -- cgit