Daniel Erez has uploaded a new change for review.

Change subject: webadmin: column sorting support for Disks tabs
......................................................................

webadmin: column sorting support for Disks tabs

Enabled column sorting for:
* Disks main-tab.
* Disks sub-tabs (under Storage/VMs/Pools).

Change-Id: Ifc48b58c35320fb095183ccae22b54d132492944
Signed-off-by: Daniel Erez <de...@redhat.com>
---
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/disks/DisksViewColumns.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/disks/DiskListModel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
6 files changed, 263 insertions(+), 153 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/75/29375/1

diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/disks/DisksViewColumns.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/disks/DisksViewColumns.java
index 3eac148..89a96a2 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/disks/DisksViewColumns.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/disks/DisksViewColumns.java
@@ -38,35 +38,46 @@
     private static final CommonApplicationConstants constants = 
GWT.create(CommonApplicationConstants.class);
     private static final CommonApplicationMessages messages = 
GWT.create(CommonApplicationMessages.class);
 
-    public static final TextColumnWithTooltip<Disk> aliasColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskAlias();
-        }
-    };
-
-    public static final TextColumnWithTooltip<Disk> idColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getId().toString();
-        }
-    };
-
-    public static final TextColumnWithTooltip<Disk> qoutaColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-
-            String value = "";
-            if (object.getDiskStorageType() == DiskStorageType.IMAGE) {
-                DiskImage diskImage = (DiskImage) object;
-                ArrayList<String> quotaNamesArr = diskImage.getQuotaNames();
-                if (quotaNamesArr != null) {
-                    value = StringHelper.join(", ", 
quotaNamesArr.toArray());//$NON-NLS-1$
-                }
+    public static TextColumnWithTooltip<Disk> getAliasColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskAlias();
             }
-            return value;
-        }
-    };
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static TextColumnWithTooltip<Disk> getIdColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getId().toString();
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static TextColumnWithTooltip<Disk> getQoutaColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                String value = "";
+                if (object.getDiskStorageType() == DiskStorageType.IMAGE) {
+                    DiskImage diskImage = (DiskImage) object;
+                    ArrayList<String> quotaNamesArr = 
diskImage.getQuotaNames();
+                    if (quotaNamesArr != null) {
+                        value = StringHelper.join(", ", 
quotaNamesArr.toArray());//$NON-NLS-1$
+                    }
+                }
+                return value;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
 
     public static final ImageResourceColumn<Disk> bootableDiskColumn = new 
ImageResourceColumn<Disk>() {
         @Override
@@ -185,93 +196,137 @@
         }
     };
 
-    public static final DiskSizeColumn<Disk> sizeColumn = new 
DiskSizeColumn<Disk>() {
-        @Override
-        protected Long getRawValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.IMAGE ?
-                    ((DiskImage) object).getSize() :
-                    (long) (((LunDisk) object).getLun().getDeviceSize() * 
Math.pow(1024, 3));
-        }
-    };
+    public static final DiskSizeColumn<Disk> getSizeColumn(String sortBy) {
+        DiskSizeColumn<Disk> column = new DiskSizeColumn<Disk>() {
+            @Override
+            protected Long getRawValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.IMAGE ?
+                        ((DiskImage) object).getSize() :
+                        (long) (((LunDisk) object).getLun().getDeviceSize() * 
Math.pow(1024, 3));
+            }
+        };
 
-    public static final DiskSizeColumn<Disk> actualSizeColumn = new 
DiskSizeColumn<Disk>(SizeConverter.SizeUnit.GB) {
-        @Override
-        protected Long getRawValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.IMAGE ?
-                    Math.round(((DiskImage) 
object).getActualDiskWithSnapshotsSize())
-                    : (long) (((LunDisk) object).getLun().getDeviceSize());
-        }
-    };
+        return (DiskSizeColumn<Disk>) makeSortable(column, sortBy);
+    }
 
-    public static final TextColumnWithTooltip<Disk> allocationColumn = new 
EnumColumn<Disk, VolumeType>() {
-        @Override
-        protected VolumeType getRawValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.IMAGE ?
-                    ((DiskImage) object).getVolumeType() : null;
-        }
-    };
+    public static final DiskSizeColumn<Disk> getActualSizeColumn(String 
sortBy) {
+        DiskSizeColumn<Disk> column = new 
DiskSizeColumn<Disk>(SizeConverter.SizeUnit.GB) {
+            @Override
+            protected Long getRawValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.IMAGE ?
+                        Math.round(((DiskImage) 
object).getActualDiskWithSnapshotsSize())
+                        : (long) (((LunDisk) object).getLun().getDeviceSize());
+            }
+        };
 
-    public static final TextColumnWithTooltip<Disk> interfaceColumn = new 
EnumColumn<Disk, DiskInterface>() {
-        @Override
-        protected DiskInterface getRawValue(Disk object) {
-            return object.getDiskInterface();
-        }
-    };
+        return (DiskSizeColumn<Disk>) makeSortable(column, sortBy);
+    }
 
-    public static final TextColumnWithTooltip<Disk> dateCreatedColumn = new 
FullDateTimeColumn<Disk>() {
-        @Override
-        protected Date getRawValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.IMAGE ?
-                    ((DiskImage) object).getCreationDate() : null;
-        }
-    };
+    public static final TextColumnWithTooltip<Disk> getAllocationColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new EnumColumn<Disk, 
VolumeType>() {
+            @Override
+            protected VolumeType getRawValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.IMAGE ?
+                        ((DiskImage) object).getVolumeType() : null;
+            }
+        };
 
-    public static final TextColumnWithTooltip<Disk> statusColumn = new 
EnumColumn<Disk, ImageStatus>() {
-        @Override
-        protected ImageStatus getRawValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.IMAGE ?
-                    ((DiskImage) object).getImageStatus() : null;
-        }
-    };
+        return makeSortable(column, sortBy);
+    }
 
-    public static final TextColumnWithTooltip<Disk> descriptionColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskDescription();
-        }
-    };
+    public static final TextColumnWithTooltip<Disk> getInterfaceColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new EnumColumn<Disk, 
DiskInterface>() {
+            @Override
+            protected DiskInterface getRawValue(Disk object) {
+                return object.getDiskInterface();
+            }
+        };
 
-    public static final TextColumnWithTooltip<Disk> lunIdColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.LUN ?
-                    ((LunDisk) object).getLun().getLUN_id() : null;
-        }
-    };
+        return makeSortable(column, sortBy);
+    }
 
-    public static final TextColumnWithTooltip<Disk> lunVendorIdColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.LUN ?
-                    ((LunDisk) object).getLun().getVendorId() : null;
-        }
-    };
+    public static final TextColumnWithTooltip<Disk> 
getDateCreatedColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new FullDateTimeColumn<Disk>() {
+            @Override
+            protected Date getRawValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.IMAGE ?
+                        ((DiskImage) object).getCreationDate() : null;
+            }
+        };
 
-    public static final TextColumnWithTooltip<Disk> lunProductIdColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.LUN ?
-                    ((LunDisk) object).getLun().getProductId() : null;
-        }
-    };
+        return makeSortable(column, sortBy);
+    }
 
-    public static final TextColumnWithTooltip<Disk> lunSerialColumn = new 
TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return object.getDiskStorageType() == DiskStorageType.LUN ?
-                    ((LunDisk) object).getLun().getSerial() : null;
-        }
-    };
+    public static final TextColumnWithTooltip<Disk> getStatusColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new EnumColumn<Disk, 
ImageStatus>() {
+            @Override
+            protected ImageStatus getRawValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.IMAGE ?
+                        ((DiskImage) object).getImageStatus() : null;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> 
getDescriptionColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskDescription();
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> getLunIdColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.LUN ?
+                        ((LunDisk) object).getLun().getLUN_id() : null;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> 
getLunVendorIdColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.LUN ?
+                        ((LunDisk) object).getLun().getVendorId() : null;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> 
getLunProductIdColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.LUN ?
+                        ((LunDisk) object).getLun().getProductId() : null;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> getLunSerialColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return object.getDiskStorageType() == DiskStorageType.LUN ?
+                        ((LunDisk) object).getLun().getSerial() : null;
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
 
     public static final CheckboxColumn<EntityModel> readOnlyCheckboxColumn = 
new CheckboxColumn<EntityModel>(
         new FieldUpdater<EntityModel, Boolean>() {
@@ -298,17 +353,38 @@
             }
     };
 
-    public static final DiskSizeColumn<Disk> snapshotSizeColumn = new 
DiskSizeColumn<Disk>() {
-        @Override
-        protected Long getRawValue(Disk object) {
-            return ((DiskImage) object).getActualSizeInBytes();
-        }
-    };
+    public static final DiskSizeColumn<Disk> getSnapshotSizeColumn(String 
sortBy) {
+        TextColumnWithTooltip<Disk> column = new DiskSizeColumn<Disk>() {
+            @Override
+            protected Long getRawValue(Disk object) {
+                return ((DiskImage) object).getActualSizeInBytes();
+            }
+        };
 
-    public static final TextColumnWithTooltip<Disk> snapshotDescriptionColumn 
= new TextColumnWithTooltip<Disk>() {
-        @Override
-        public String getValue(Disk object) {
-            return ((DiskImage) object).getVmSnapshotDescription();
+        return (DiskSizeColumn<Disk>) makeSortable(column, sortBy);
+    }
+
+    public static final TextColumnWithTooltip<Disk> 
getSnapshotDescriptionColumn(String sortBy) {
+        TextColumnWithTooltip<Disk> column = new TextColumnWithTooltip<Disk>() 
{
+            @Override
+            public String getValue(Disk object) {
+                return ((DiskImage) object).getVmSnapshotDescription();
+            }
+        };
+
+        return makeSortable(column, sortBy);
+    }
+
+    public static <T> TextColumnWithTooltip<T> 
makeSortable(TextColumnWithTooltip<T> column, String sortBy) {
+        if (sortBy == null ) {
+            // Client sorting
+            column.makeSortable();
         }
-    };
+        else if (!sortBy.equals(constants.empty())) {
+            // Server sorting
+            column.makeSortable(sortBy);
+        }
+
+        return column;
+    }
 }
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
index 8bca767..a5c3b58 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/uicommon/vm/BaseVmDiskListModelTable.java
@@ -79,7 +79,7 @@
                 DisksViewColumns.diskStatusColumn, constants.empty(), all || 
images || luns, "30px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.aliasColumn, constants.aliasDisk(), all || 
images || luns, "120px"); //$NON-NLS-1$
+                DisksViewColumns.getAliasColumn(null), constants.aliasDisk(), 
all || images || luns, "120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.bootableDiskColumn,
@@ -98,13 +98,13 @@
                 DisksViewColumns.lunDiskColumn.getHeaderHtml(), all, "30px"); 
//$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.sizeColumn, constants.provisionedSizeDisk(), 
all || images || luns, "110px"); //$NON-NLS-1$
+                DisksViewColumns.getSizeColumn(null), 
constants.provisionedSizeDisk(), all || images || luns, "110px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.actualSizeColumn, constants.sizeDisk(), 
images, "110px"); //$NON-NLS-1$
+                DisksViewColumns.getActualSizeColumn(null), 
constants.sizeDisk(), images, "110px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.allocationColumn, constants.allocationDisk(), 
images, "125px"); //$NON-NLS-1$
+                DisksViewColumns.getAllocationColumn(null), 
constants.allocationDisk(), images, "125px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.storageDomainsColumn, 
constants.storageDomainDisk(), images, "125px"); //$NON-NLS-1$
@@ -113,34 +113,34 @@
                 DisksViewColumns.storageTypeColumn, 
constants.storageTypeDisk(), images, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.dateCreatedColumn, 
constants.creationDateDisk(), images, "120px"); //$NON-NLS-1$
+                DisksViewColumns.getDateCreatedColumn(null), 
constants.creationDateDisk(), images, "120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunIdColumn, constants.lunIdSanStorage(), 
luns, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getLunIdColumn(null), 
constants.lunIdSanStorage(), luns, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunSerialColumn, 
constants.serialSanStorage(), luns, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getLunSerialColumn(null), 
constants.serialSanStorage(), luns, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunVendorIdColumn, 
constants.vendorIdSanStorage(), luns, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getLunVendorIdColumn(null), 
constants.vendorIdSanStorage(), luns, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunProductIdColumn, 
constants.productIdSanStorage(), luns, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getLunProductIdColumn(null), 
constants.productIdSanStorage(), luns, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.diskContainersColumn, 
constants.attachedToDisk(), all || images || luns, "110px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.interfaceColumn, constants.interfaceDisk(), 
all || images || luns, "100px"); //$NON-NLS-1$
+                DisksViewColumns.getInterfaceColumn(null), 
constants.interfaceDisk(), all || images || luns, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.diskAlignmentColumn, 
constants.diskAlignment(), all || images || luns, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.statusColumn, constants.statusDisk(), images, 
"80px"); //$NON-NLS-1$
+                DisksViewColumns.getStatusColumn(null), 
constants.statusDisk(), images, "80px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.descriptionColumn, 
constants.descriptionDisk(), all || images || luns, "90px"); //$NON-NLS-1$
+                DisksViewColumns.getDescriptionColumn(null), 
constants.descriptionDisk(), all || images || luns, "90px"); //$NON-NLS-1$
 
     }
 }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/disks/DiskListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/disks/DiskListModel.java
index 12ecacb..fde26fe 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/disks/DiskListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/disks/DiskListModel.java
@@ -202,12 +202,17 @@
     @Override
     protected void syncSearch()
     {
-        SearchParameters tempVar = new SearchParameters(getSearchString(), 
SearchType.Disk, isCaseSensitiveSearch());
+        SearchParameters tempVar = new 
SearchParameters(applySortOptions(getSearchString()), SearchType.Disk, 
isCaseSensitiveSearch());
         tempVar.setMaxCount(getSearchPageSize());
         super.syncSearch(VdcQueryType.Search, tempVar);
     }
 
     @Override
+    public boolean supportsServerSideSorting() {
+        return true;
+    }
+
+    @Override
     public void setItems(Collection value)
     {
         if (value == null) {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
index 9efe756..4ae10a0 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabDiskView.java
@@ -4,10 +4,13 @@
 import org.ovirt.engine.core.common.businessentities.Disk.DiskStorageType;
 import org.ovirt.engine.core.common.businessentities.QuotaEnforcementTypeEnum;
 import org.ovirt.engine.core.common.businessentities.StoragePool;
+import org.ovirt.engine.core.searchbackend.DiskConditionFieldAutoCompleter;
 import org.ovirt.engine.ui.common.idhandler.ElementIdHandler;
 import org.ovirt.engine.ui.common.uicommon.model.CommonModelManager;
 import org.ovirt.engine.ui.common.uicommon.model.MainModelProvider;
 import org.ovirt.engine.ui.common.widget.action.CommandLocation;
+import org.ovirt.engine.ui.common.widget.table.column.DiskSizeColumn;
+import org.ovirt.engine.ui.common.widget.table.column.TextColumnWithTooltip;
 import org.ovirt.engine.ui.common.widget.uicommon.disks.DisksViewColumns;
 import org.ovirt.engine.ui.common.widget.uicommon.disks.DisksViewRadioGroup;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
@@ -44,6 +47,19 @@
     private final ApplicationConstants constants;
     private DisksViewRadioGroup disksViewRadioGroup;
     private boolean isQuotaVisible;
+
+    private static TextColumnWithTooltip<Disk> aliasColumn;
+    private static TextColumnWithTooltip<Disk> idColumn;
+    private static DiskSizeColumn sizeColumn;
+    private static TextColumnWithTooltip<Disk> allocationColumn;
+    private static TextColumnWithTooltip<Disk> dateCreatedColumn;
+    private static TextColumnWithTooltip<Disk> statusColumn;
+    private static TextColumnWithTooltip<Disk> lunIdColumn;
+    private static TextColumnWithTooltip<Disk> lunSerialColumn;
+    private static TextColumnWithTooltip<Disk> lunVendorIdColumn;
+    private static TextColumnWithTooltip<Disk> lunProductIdColumn;
+    private static TextColumnWithTooltip<Disk> qoutaColumn;
+    private static TextColumnWithTooltip<Disk> descriptionColumn;
 
     @Inject
     public MainTabDiskView(MainModelProvider<Disk, DiskListModel> 
modelProvider, ApplicationConstants constants) {
@@ -104,11 +120,11 @@
         searchByDiskViewType(disksViewRadioGroup.getDiskStorageType());
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.aliasColumn, constants.aliasDisk(), all || 
images || luns,
+                aliasColumn, constants.aliasDisk(), all || images || luns,
                 "120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.idColumn, constants.idDisk(), all || images 
|| luns,
+                idColumn, constants.idDisk(), all || images || luns,
                 "120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
@@ -136,47 +152,60 @@
                 "180px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.sizeColumn, constants.provisionedSizeDisk(), 
all || images || luns,
+                sizeColumn, constants.provisionedSizeDisk(), all || images || 
luns,
                 "110px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.allocationColumn, constants.allocationDisk(), 
images,
+                allocationColumn, constants.allocationDisk(), images,
                 "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.dateCreatedColumn, 
constants.creationDateDisk(), images,
+                dateCreatedColumn, constants.creationDateDisk(), images,
                 "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.statusColumn, constants.statusDisk(), images,
+                statusColumn, constants.statusDisk(), images,
                 "80px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunIdColumn, constants.lunIdSanStorage(), 
luns,
+                lunIdColumn, constants.lunIdSanStorage(), luns,
                 "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunSerialColumn, 
constants.serialSanStorage(), luns,
+                lunSerialColumn, constants.serialSanStorage(), luns,
                 "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunVendorIdColumn, 
constants.vendorIdSanStorage(), luns,
+                lunVendorIdColumn, constants.vendorIdSanStorage(), luns,
                 "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.lunProductIdColumn, 
constants.productIdSanStorage(), luns,
+                lunProductIdColumn, constants.productIdSanStorage(), luns,
                 "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.qoutaColumn, constants.quotaDisk(), images && 
isQuotaVisible, "120px"); //$NON-NLS-1$
+                qoutaColumn, constants.quotaDisk(), images && isQuotaVisible, 
"120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.descriptionColumn, 
constants.descriptionDisk(), all || images || luns,
+                descriptionColumn, constants.descriptionDisk(), all || images 
|| luns,
                 "90px"); //$NON-NLS-1$
     }
 
     void initTableColumns() {
         getTable().enableColumnResizing();
+
+        aliasColumn = 
DisksViewColumns.getAliasColumn(DiskConditionFieldAutoCompleter.ALIAS);
+        idColumn = 
DisksViewColumns.getIdColumn(DiskConditionFieldAutoCompleter.ID);
+        sizeColumn = 
DisksViewColumns.getSizeColumn(DiskConditionFieldAutoCompleter.PROVISIONED_SIZE);
+        allocationColumn = 
DisksViewColumns.getAllocationColumn(constants.empty());
+        dateCreatedColumn = 
DisksViewColumns.getDateCreatedColumn(DiskConditionFieldAutoCompleter.CREATION_DATE);
+        statusColumn = 
DisksViewColumns.getStatusColumn(DiskConditionFieldAutoCompleter.STATUS);
+        lunIdColumn = DisksViewColumns.getLunIdColumn(constants.empty());
+        lunSerialColumn = 
DisksViewColumns.getLunSerialColumn(constants.empty());
+        lunVendorIdColumn = 
DisksViewColumns.getLunVendorIdColumn(constants.empty());
+        lunProductIdColumn = 
DisksViewColumns.getLunProductIdColumn(constants.empty());
+        qoutaColumn = 
DisksViewColumns.getQoutaColumn(DiskConditionFieldAutoCompleter.QUOTA);
+        descriptionColumn = 
DisksViewColumns.getDescriptionColumn(DiskConditionFieldAutoCompleter.DESCRIPTION);
     }
 
     void initTableOverhead() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
index 48a91b0..99f6e34 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageDiskView.java
@@ -38,7 +38,7 @@
         getTable().enableColumnResizing();
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.aliasColumn, constants.aliasDisk(), true, 
"90px"); //$NON-NLS-1$
+                DisksViewColumns.getAliasColumn(null), constants.aliasDisk(), 
true, "90px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.bootableDiskColumn,
@@ -49,13 +49,13 @@
                 DisksViewColumns.shareableDiskColumn.getHeaderHtml(), true, 
"30px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.sizeColumn, constants.provisionedSizeDisk(), 
true, "100px"); //$NON-NLS-1$
+                DisksViewColumns.getSizeColumn(null), 
constants.provisionedSizeDisk(), true, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.actualSizeColumn, constants.sizeDisk(), true, 
"130px"); //$NON-NLS-1$
+                DisksViewColumns.getActualSizeColumn(null), 
constants.sizeDisk(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.allocationColumn, constants.allocationDisk(), 
true, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getAllocationColumn(null), 
constants.allocationDisk(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.storageDomainsColumn, 
constants.storageDomainDisk(), true, "170px"); //$NON-NLS-1$
@@ -64,7 +64,7 @@
                 DisksViewColumns.storageTypeColumn, 
constants.storageDomainDisk(), true, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.dateCreatedColumn, 
constants.creationDateDisk(), true, "150px"); //$NON-NLS-1$
+                DisksViewColumns.getDateCreatedColumn(null), 
constants.creationDateDisk(), true, "150px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.diskContainersIconColumn, "", true, "30px"); 
//$NON-NLS-1$ //$NON-NLS-2$
@@ -76,10 +76,10 @@
                 DisksViewColumns.diskAlignmentColumn, 
constants.diskAlignment(), true, "120px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.statusColumn, constants.statusDisk(), true, 
"100px"); //$NON-NLS-1$
+                DisksViewColumns.getSizeColumn(null), constants.statusDisk(), 
true, "100px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.descriptionColumn, 
constants.descriptionDisk(), true, "100px"); //$NON-NLS-1$
+                DisksViewColumns.getDescriptionColumn(null), 
constants.descriptionDisk(), true, "100px"); //$NON-NLS-1$
 
         getTable().addActionButton(new 
WebAdminButtonDefinition<Disk>(constants.removeDisk()) {
             @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
index e55dd5c..0e74864 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/storage/SubTabStorageSnapshotView.java
@@ -36,22 +36,22 @@
         getTable().enableColumnResizing();
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.snapshotSizeColumn, 
constants.diskSnapshotSize(), true, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getSnapshotSizeColumn(null), 
constants.diskSnapshotSize(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.dateCreatedColumn, 
constants.creationDateDisk(), true, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getDateCreatedColumn(null), 
constants.creationDateDisk(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.aliasColumn, constants.diskSnapshotAlias(), 
true, "130px"); //$NON-NLS-1$
+                DisksViewColumns.getAliasColumn(null), 
constants.diskSnapshotAlias(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.snapshotDescriptionColumn, 
constants.diskSnapshotDescription(), true, "160px"); //$NON-NLS-1$
+                DisksViewColumns.getSnapshotDescriptionColumn(null), 
constants.diskSnapshotDescription(), true, "160px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
                 DisksViewColumns.diskContainersColumn, 
constants.attachedToDisk(), true, "130px"); //$NON-NLS-1$
 
         getTable().ensureColumnPresent(
-                DisksViewColumns.statusColumn, constants.statusDisk(), true, 
"80px"); //$NON-NLS-1$
+                DisksViewColumns.getStatusColumn(null), 
constants.statusDisk(), true, "80px"); //$NON-NLS-1$
 
         getTable().addActionButton(new 
WebAdminButtonDefinition<Disk>(constants.removeDisk()) {
             @Override


-- 
To view, visit http://gerrit.ovirt.org/29375
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifc48b58c35320fb095183ccae22b54d132492944
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Daniel Erez <de...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to