From 72674378a5b649fbd472a580c6d76cb3a0a986d1 Mon Sep 17 00:00:00 2001 From: selvam Date: Fri, 27 May 2011 16:21:29 +0530 Subject: Disk description field added to disk model --- .../src/com/gluster/storage/management/core/model/Disk.java | 9 +++++++++ .../src/com/gluster/storage/management/gui/utils/GUIHelper.java | 4 ++++ 2 files changed, 13 insertions(+) (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 d351ad93..5b5422da 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 @@ -34,6 +34,7 @@ public class Disk extends Entity { private String serverName; private String mountPoint; + private String description; private Double space; private Double spaceInUse; private DISK_STATUS status; @@ -102,6 +103,14 @@ public class Disk extends Entity { return mountPoint; } + public void setDescription(String description) { + this.description = description; + } + + public String getDescription() { + return description; + } + public Disk(Server server, String name, String mountPoint, Double space, Double spaceInUse, DISK_STATUS status) { super(name, server); setServerName(server != null ? server.getName() : ""); diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/utils/GUIHelper.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/utils/GUIHelper.java index 90b5d587..01dbc557 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/utils/GUIHelper.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/utils/GUIHelper.java @@ -394,4 +394,8 @@ public class GUIHelper { public void clearStatusMessage() { Application.getApplication().getStatusLineManager().setMessage(null); } + + public String getDiskToolTip(Disk disk) { + return disk.getQualifiedName() + " - " + disk.getDescription(); + } } -- cgit From fd130153238b8e1ecc257a3d592914091c688724 Mon Sep 17 00:00:00 2001 From: selvam Date: Fri, 27 May 2011 16:58:06 +0530 Subject: UI feedback Gluster Servers view available space column added --- .../src/com/gluster/storage/management/core/model/Server.java | 4 ++++ .../storage/management/gui/GlusterServerTableLabelProvider.java | 4 +++- .../storage/management/gui/views/details/GlusterServersPage.java | 5 +++-- 3 files changed, 10 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Server.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Server.java index 256b9ec4..487733c3 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Server.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Server.java @@ -103,6 +103,10 @@ public class Server extends Entity { return diskSpaceInUse; } + public double getFreeDiskSpace() { + return getTotalDiskSpace() - getDiskSpaceInUse(); + } + /** * Total disk space in use is automatically calculated, and hence this method should never be called. It is required * only to make sure that the element "diskSpaceInUse" gets added to the XML tag when jersey converts the server diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/GlusterServerTableLabelProvider.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/GlusterServerTableLabelProvider.java index 3fc2dfa0..61e98cb8 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/GlusterServerTableLabelProvider.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/GlusterServerTableLabelProvider.java @@ -70,6 +70,8 @@ public class GlusterServerTableLabelProvider extends TableLabelProviderAdapter { : columnIndex == GLUSTER_SERVER_TABLE_COLUMN_INDICES.TOTAL_MEMORY.ordinal() ? "" + server.getTotalMemory() //: columnIndex == SERVER_DISK_TABLE_COLUMN_INDICES.MEMORY_IN_USE.ordinal() ? "" + server.getMemoryInUse() : columnIndex == GLUSTER_SERVER_TABLE_COLUMN_INDICES.TOTAL_DISK_SPACE.ordinal() ? NumberUtil.formatNumber(server.getTotalDiskSpace()) - : columnIndex == GLUSTER_SERVER_TABLE_COLUMN_INDICES.IP_ADDRESSES.ordinal() ? server.getIpAddressesAsString() : "Invalid"); + : columnIndex == GLUSTER_SERVER_TABLE_COLUMN_INDICES.IP_ADDRESSES.ordinal() ? server.getIpAddressesAsString() + : columnIndex == GLUSTER_SERVER_TABLE_COLUMN_INDICES.AVAILABLE_DISK_SPACE.ordinal() ? NumberUtil.formatNumber(server.getFreeDiskSpace()) + : "Invalid"); } } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/GlusterServersPage.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/GlusterServersPage.java index 01766115..ef104fe2 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/GlusterServersPage.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/GlusterServersPage.java @@ -51,11 +51,11 @@ public class GlusterServersPage extends Composite { private GUIHelper guiHelper = GUIHelper.getInstance(); public enum GLUSTER_SERVER_TABLE_COLUMN_INDICES { - NAME, IP_ADDRESSES, NUM_OF_CPUS, TOTAL_MEMORY, TOTAL_DISK_SPACE, STATUS // Removed PREFERRED_NETWORK + NAME, IP_ADDRESSES, NUM_OF_CPUS, TOTAL_MEMORY, TOTAL_DISK_SPACE, AVAILABLE_DISK_SPACE, STATUS // Removed PREFERRED_NETWORK }; private static final String[] GLUSTER_SERVER_TABLE_COLUMN_NAMES = new String[] { "Name", - "IP Address(es)", "Number\nof CPUs", "Total\nMemory (GB)", "Total Disk\n Space (GB)", "Status" }; // Removed "Preferred\nNetwork", + "IP Address(es)", "Number\nof CPUs", "Total\nMemory (GB)", "Space (GB)", "Space\nAvailable (GB)", "Status" }; // Removed "Preferred\nNetwork", public GlusterServersPage(Composite parent, int style) { super(parent, style); @@ -118,6 +118,7 @@ public class GlusterServersPage extends Composite { setColumnProperties(table, GLUSTER_SERVER_TABLE_COLUMN_INDICES.TOTAL_MEMORY, SWT.CENTER, 90); //setColumnProperties(table, SERVER_DISK_TABLE_COLUMN_INDICES.MEMORY_IN_USE, SWT.CENTER, 90); setColumnProperties(table, GLUSTER_SERVER_TABLE_COLUMN_INDICES.TOTAL_DISK_SPACE, SWT.CENTER, 90); + setColumnProperties(table, GLUSTER_SERVER_TABLE_COLUMN_INDICES.AVAILABLE_DISK_SPACE, SWT.CENTER, 90); //setColumnProperties(table, SERVER_DISK_TABLE_COLUMN_INDICES.DISK_SPACE_IN_USE, SWT.CENTER, 90); } -- cgit From 0e78b61ba5ac8bbb493a567032176c372def32bc Mon Sep 17 00:00:00 2001 From: selvam Date: Mon, 30 May 2011 12:22:44 +0530 Subject: UI feed back changes on disk views --- .../management/client/GlusterDataModelManager.java | 2 +- .../management/gui/BrickTableLabelProvider.java | 17 +++++++++---- .../management/gui/DiskTableLabelProvider.java | 29 ++++++++++++++-------- .../management/gui/views/VolumeSummaryView.java | 1 + .../management/gui/views/VolumesSummaryView.java | 2 ++ .../management/gui/views/details/BricksPage.java | 8 +++--- .../management/gui/views/details/DisksPage.java | 9 ++++--- .../management/server/utils/GlusterUtil.java | 4 +++ 8 files changed, 47 insertions(+), 25 deletions(-) (limited to 'src') diff --git a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java index b01a0ece..693c81a0 100644 --- a/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java +++ b/src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/GlusterDataModelManager.java @@ -226,7 +226,7 @@ public class GlusterDataModelManager { public List getOnlineBricks(Volume volume) { List onlineBricks = new ArrayList(); for (Brick brick : volume.getBricks()) { - if (isOnlineDisk(brick.getDiskName())) { + if (!isOnlineDisk(brick.getDiskName())) { onlineBricks.add(brick); } } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/BrickTableLabelProvider.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/BrickTableLabelProvider.java index d8ace927..57e46d3e 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/BrickTableLabelProvider.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/BrickTableLabelProvider.java @@ -63,7 +63,7 @@ public class BrickTableLabelProvider extends TableLabelProviderAdapter { } private String getDiskSpaceInUse(Disk disk) { - if (disk.isReady()) { + if (disk.isReady() && disk.getSpaceInUse() != null) { return NumberUtil.formatNumber(disk.getSpaceInUse()); } else { return "NA"; @@ -71,10 +71,18 @@ public class BrickTableLabelProvider extends TableLabelProviderAdapter { } private String getDiskFreeSpace(Disk disk) { - if (disk.isReady()) { + if (disk.isReady() && disk.getFreeSpace() != null) { return NumberUtil.formatNumber(disk.getFreeSpace()); } else { - return "NA"; + return "NA"; + } + } + + private String getDiskSpace( Disk disk) { + if (disk.isReady() && disk.getSpace() != null && disk.getSpace() != 0.0) { + return NumberUtil.formatNumber(disk.getSpace()); + } else { + return "NA"; } } @@ -86,11 +94,10 @@ public class BrickTableLabelProvider extends TableLabelProviderAdapter { Brick brick = (Brick) element; Disk disk = GlusterDataModelManager.getInstance().getDiskDetails(brick.getDiskName()); - return (columnIndex == BRICK_TABLE_COLUMN_INDICES.SERVER.ordinal() ? brick.getServerName() : columnIndex == BRICK_TABLE_COLUMN_INDICES.BRICK.ordinal() ? brick.getBrickDirectory() + : columnIndex == BRICK_TABLE_COLUMN_INDICES.SPACE.ordinal() ? getDiskSpace(disk) : columnIndex == BRICK_TABLE_COLUMN_INDICES.FREE_SPACE.ordinal() ? getDiskFreeSpace(disk) - : columnIndex == BRICK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal() ? getDiskSpaceInUse(disk) : columnIndex == BRICK_TABLE_COLUMN_INDICES.STATUS.ordinal() ? brick.getStatusStr() : "Invalid"); } } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/DiskTableLabelProvider.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/DiskTableLabelProvider.java index 23bbadd6..48e8d11a 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/DiskTableLabelProvider.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/DiskTableLabelProvider.java @@ -20,7 +20,6 @@ package com.gluster.storage.management.gui; import org.eclipse.swt.graphics.Image; -import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.core.exceptions.GlusterRuntimeException; import com.gluster.storage.management.core.model.Brick; import com.gluster.storage.management.core.model.Disk; @@ -35,12 +34,13 @@ public class DiskTableLabelProvider extends TableLabelProviderAdapter { @Override public Image getColumnImage(Object element, int columnIndex) { - if (!(element instanceof Brick)) { + if (!(element instanceof Disk)) { return null; } - Brick brick = (Brick) element; - Disk disk = GlusterDataModelManager.getInstance().getDisk(brick.getDiskName()); + // Brick brick = (Brick) element; + // Disk disk = GlusterDataModelManager.getInstance().getDisk(brick.getDiskName()); + Disk disk = (Disk) element; if (columnIndex == DISK_TABLE_COLUMN_INDICES.STATUS.ordinal()) { DISK_STATUS status = disk.getStatus(); @@ -70,6 +70,14 @@ public class DiskTableLabelProvider extends TableLabelProviderAdapter { } private String getDiskFreeSpace(Disk disk) { + if (disk.hasErrors() || disk.isUninitialized()) { + return "NA"; + } else { + return NumberUtil.formatNumber(disk.getFreeSpace()); + } + } + + private String getTotalDiskSpace(Disk disk) { if (disk.hasErrors() || disk.isUninitialized()) { return "NA"; } else { @@ -79,17 +87,16 @@ public class DiskTableLabelProvider extends TableLabelProviderAdapter { @Override public String getColumnText(Object element, int columnIndex) { - if (!(element instanceof Brick)) { + if (!(element instanceof Disk)) { return null; } - Brick brick = (Brick) element; - Disk disk = GlusterDataModelManager.getInstance().getDisk(brick.getDiskName()); - - return (columnIndex == DISK_TABLE_COLUMN_INDICES.SERVER.ordinal() ? brick.getServerName() - : columnIndex == DISK_TABLE_COLUMN_INDICES.DISK.ordinal() ? brick.getBrickDirectory() + Disk disk = (Disk) element; + return (columnIndex == DISK_TABLE_COLUMN_INDICES.SERVER.ordinal() ? disk.getServerName() + : columnIndex == DISK_TABLE_COLUMN_INDICES.DISK.ordinal() ? disk.getName() + : columnIndex == DISK_TABLE_COLUMN_INDICES.TOTAL_SPACE.ordinal() ? getTotalDiskSpace(disk) : columnIndex == DISK_TABLE_COLUMN_INDICES.FREE_SPACE.ordinal() ? getDiskFreeSpace(disk) - : columnIndex == DISK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal() ? getDiskSpaceInUse(disk) + // : columnIndex == DISK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal() ? getDiskSpaceInUse(disk) : columnIndex == DISK_TABLE_COLUMN_INDICES.STATUS.ordinal() ? disk.getStatusStr() : "Invalid"); } } 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 6871c683..b4278518 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 @@ -35,6 +35,7 @@ import org.eclipse.ui.part.ViewPart; import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.client.VolumesClient; import com.gluster.storage.management.core.model.Alert; +import com.gluster.storage.management.core.model.Brick; import com.gluster.storage.management.core.model.Cluster; import com.gluster.storage.management.core.model.DefaultClusterListener; import com.gluster.storage.management.core.model.Event; 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 db2bb71d..35dd0700 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 @@ -32,6 +32,7 @@ import org.eclipse.ui.forms.widgets.ScrolledForm; import org.eclipse.ui.part.ViewPart; import com.gluster.storage.management.core.model.Alert; +import com.gluster.storage.management.core.model.Brick; import com.gluster.storage.management.core.model.EntityGroup; import com.gluster.storage.management.client.GlusterDataModelManager; import com.gluster.storage.management.core.model.RunningTask; @@ -72,6 +73,7 @@ public class VolumesSummaryView extends ViewPart { volumes = (EntityGroup) selectedObj; } } + setPartName("Summary"); createSections(parent); } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/BricksPage.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/BricksPage.java index 263c4a10..41f6b531 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/BricksPage.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/BricksPage.java @@ -34,11 +34,11 @@ import com.gluster.storage.management.gui.BrickTableLabelProvider; public class BricksPage extends AbstractBricksPage { public enum BRICK_TABLE_COLUMN_INDICES { - SERVER, BRICK, FREE_SPACE, SPACE_IN_USE, STATUS + SERVER, BRICK, SPACE, FREE_SPACE, STATUS }; - private static final String[] DISK_TABLE_COLUMN_NAMES = new String[] { "Server", "Brick Directory", "Free Space (GB)", - "Space in Use (GB)", "Status" }; + private static final String[] DISK_TABLE_COLUMN_NAMES = new String[] { "Server", "Brick Directory", "Space (GB)", + "Free Space (GB)", "Status" }; public BricksPage(final Composite parent, int style, IWorkbenchSite site, List bricks) { super(parent, style, site, bricks); @@ -54,8 +54,8 @@ public class BricksPage extends AbstractBricksPage { guiHelper.setColumnProperties(table, BRICK_TABLE_COLUMN_INDICES.SERVER.ordinal(), SWT.CENTER, 100); guiHelper.setColumnProperties(table, BRICK_TABLE_COLUMN_INDICES.BRICK.ordinal(), SWT.CENTER, 100); + guiHelper.setColumnProperties(table, BRICK_TABLE_COLUMN_INDICES.SPACE.ordinal(), SWT.CENTER, 90); guiHelper.setColumnProperties(table, BRICK_TABLE_COLUMN_INDICES.FREE_SPACE.ordinal(), SWT.CENTER, 90); - guiHelper.setColumnProperties(table, BRICK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal(), SWT.CENTER, 90); } @Override diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/DisksPage.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/DisksPage.java index 84fd6c64..6d0f2d43 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/DisksPage.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/DisksPage.java @@ -33,11 +33,11 @@ import com.gluster.storage.management.gui.DiskTableLabelProvider; public class DisksPage extends AbstractDisksPage { public enum DISK_TABLE_COLUMN_INDICES { - SERVER, DISK, FREE_SPACE, SPACE_IN_USE, STATUS + SERVER, DISK, TOTAL_SPACE, FREE_SPACE, STATUS }; - private static final String[] DISK_TABLE_COLUMN_NAMES = new String[] { "Server", "Brick Directory", "Free Space (GB)", - "Space in Use (GB)", "Status" }; + private static final String[] DISK_TABLE_COLUMN_NAMES = new String[] { "Server", "Disk", "Space (GB)", + "Free Space (GB)", "Status" }; public DisksPage(final Composite parent, int style, IWorkbenchSite site, List disks) { super(parent, style, site, disks); @@ -53,8 +53,9 @@ public class DisksPage extends AbstractDisksPage { guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.SERVER.ordinal(), SWT.CENTER, 100); guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.DISK.ordinal(), SWT.CENTER, 100); + guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.TOTAL_SPACE.ordinal(), SWT.CENTER, 90); guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.FREE_SPACE.ordinal(), SWT.CENTER, 90); - guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal(), SWT.CENTER, 90); + // guiHelper.setColumnProperties(table, DISK_TABLE_COLUMN_INDICES.SPACE_IN_USE.ordinal(), SWT.CENTER, 90); } @Override diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java index a101b75d..db0e5f8f 100644 --- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java +++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java @@ -342,7 +342,10 @@ public class GlusterUtil { private void addBrickToVolume(Volume volume, String serverName, String brickDir) { // TODO: Brick status should be same as the server status (online/offline) +System.out.println(brickDir); volume.addBrick(new Brick(serverName, BRICK_STATUS.ONLINE, brickDir.split("/")[2].trim(), brickDir)); + + // volume.getBricks().get(0).getName(); // // try { // volume.addDisk(serverName + ":" + brickDir.split("/")[2].trim()); @@ -448,6 +451,7 @@ public class GlusterUtil { if (volume != null) {// Adding the last volume parsed volumes.add(volume); } + return volumes; } -- cgit