anmolbabu has uploaded a new change for review.

Change subject: webadmin : Volume main and sub tabs' columns sortable
......................................................................

webadmin : Volume main and sub tabs' columns sortable

This patch incorporates the sortable columns to the
volume main and sub tabs' columns.

Change-Id: I4795251fc2a73eb347f1e891d6c5f40ed8a67e47
Signed-off-by: Anmol Babu <anb...@redhat.com>
---
M 
backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/gluster/GlusterVolumeConditionFieldAutoCompleter.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/volumes/VolumeListModel.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVolumeView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeBrickView.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeParameterView.java
5 files changed, 39 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/33/28233/1

diff --git 
a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/gluster/GlusterVolumeConditionFieldAutoCompleter.java
 
b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/gluster/GlusterVolumeConditionFieldAutoCompleter.java
index b258f19..5d1ef66 100644
--- 
a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/gluster/GlusterVolumeConditionFieldAutoCompleter.java
+++ 
b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/gluster/GlusterVolumeConditionFieldAutoCompleter.java
@@ -26,7 +26,7 @@
 public class GlusterVolumeConditionFieldAutoCompleter extends 
BaseConditionFieldAutoCompleter {
     public final static GlusterVolumeConditionFieldAutoCompleter INSTANCE = 
new GlusterVolumeConditionFieldAutoCompleter();
 
-    private enum FIELDS {
+    public static enum FIELDS {
         NAME,
         TYPE,
         TRANSPORT_TYPE,
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/volumes/VolumeListModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/volumes/VolumeListModel.java
index db929e6..95f20c5 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/volumes/VolumeListModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/volumes/VolumeListModel.java
@@ -356,12 +356,17 @@
 
     @Override
     protected void syncSearch() {
-        SearchParameters tempVar = new SearchParameters(getSearchString(), 
SearchType.GlusterVolume, isCaseSensitiveSearch());
+        SearchParameters tempVar = new 
SearchParameters(applySortOptions(getSearchString()), SearchType.GlusterVolume, 
isCaseSensitiveSearch());
         tempVar.setMaxCount(getSearchPageSize());
         super.syncSearch(VdcQueryType.Search, tempVar);
     }
 
     @Override
+    public boolean supportsServerSideSorting() {
+        return true;
+    }
+
+    @Override
     protected void onSelectedItemChanged() {
         super.onSelectedItemChanged();
         updateActionAvailability();
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVolumeView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVolumeView.java
index 2327042..bd43e26 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVolumeView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/MainTabVolumeView.java
@@ -8,6 +8,7 @@
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity;
 import org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeType;
 import org.ovirt.engine.core.common.businessentities.gluster.TransportType;
+import 
org.ovirt.engine.core.searchbackend.gluster.GlusterVolumeConditionFieldAutoCompleter;
 import org.ovirt.engine.ui.common.idhandler.ElementIdHandler;
 import org.ovirt.engine.ui.common.uicommon.model.MainModelProvider;
 import org.ovirt.engine.ui.common.widget.table.column.EnumColumn;
@@ -63,6 +64,8 @@
                 return object.getName();
             }
         };
+        
nameColumn.makeSortable(GlusterVolumeConditionFieldAutoCompleter.FIELDS.NAME.toString());
+
         getTable().addColumn(nameColumn, constants.NameVolume(), "150px"); 
//$NON-NLS-1$
 
         TextColumnWithTooltip<GlusterVolumeEntity> clusterColumn = new 
TextColumnWithTooltip<GlusterVolumeEntity>() {
@@ -81,6 +84,7 @@
                         return object.getVolumeType();
                     }
                 };
+        
volumeTypeColumn.makeSortable(GlusterVolumeConditionFieldAutoCompleter.FIELDS.TYPE.toString());
         getTable().addColumn(volumeTypeColumn, constants.volumeTypeVolume(), 
"150px"); //$NON-NLS-1$
 
         getTable().addColumn(new VolumeBrickStatusColumn(), 
constants.bricksStatusVolume(), "150px"); //$NON-NLS-1$
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeBrickView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeBrickView.java
index d106c7a..a2d03b3 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeBrickView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeBrickView.java
@@ -1,6 +1,7 @@
 package org.ovirt.engine.ui.webadmin.section.main.view.tab.gluster;
 
 import java.util.ArrayList;
+import java.util.Comparator;
 import java.util.List;
 
 import org.ovirt.engine.core.common.asynctasks.gluster.GlusterTaskType;
@@ -56,6 +57,12 @@
                 return brick.getServerName();
             }
         };
+        serverColumn.makeSortable(new Comparator<GlusterBrickEntity>() {
+            @Override
+            public int compare(GlusterBrickEntity brick0, GlusterBrickEntity 
brick1) {
+                return 
brick0.getServerName().compareTo(brick1.getServerName());
+            }
+        });
         getTable().addColumn(serverColumn, constants.serverVolumeBrick(), 
"300px"); //$NON-NLS-1$
 
         TextColumnWithTooltip<GlusterBrickEntity> directoryColumn = new 
TextColumnWithTooltip<GlusterBrickEntity>() {
@@ -64,6 +71,13 @@
                 return brick.getBrickDirectory();
             }
         };
+        directoryColumn.makeSortable(new Comparator<GlusterBrickEntity>() {
+            @Override
+            public int compare(GlusterBrickEntity o1, GlusterBrickEntity o2) {
+                return 
o1.getBrickDirectory().compareTo(o2.getBrickDirectory());
+            }
+        });
+
         getTable().addColumn(directoryColumn, 
constants.brickDirectoryVolumeBrick(), "400px"); //$NON-NLS-1$
 
         getTable().addColumn(new PercentColumn<GlusterBrickEntity>() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeParameterView.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeParameterView.java
index 041b8cf..e4ce44c 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeParameterView.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/tab/gluster/SubTabVolumeParameterView.java
@@ -1,5 +1,7 @@
 package org.ovirt.engine.ui.webadmin.section.main.view.tab.gluster;
 
+import java.util.Comparator;
+
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeEntity;
 import 
org.ovirt.engine.core.common.businessentities.gluster.GlusterVolumeOptionEntity;
 import org.ovirt.engine.ui.common.idhandler.ElementIdHandler;
@@ -39,6 +41,12 @@
                 return option.getKey();
             }
         };
+        optionKeyColumn.makeSortable(new 
Comparator<GlusterVolumeOptionEntity>() {
+            @Override
+            public int compare(GlusterVolumeOptionEntity o1, 
GlusterVolumeOptionEntity o2) {
+                return o1.getKey().compareTo(o2.getKey());
+            }
+        });
         getTable().addColumn(optionKeyColumn, 
constants.optionKeyVolumeParameter(), "400px"); //$NON-NLS-1$
         TextColumnWithTooltip<GlusterVolumeOptionEntity> optionValueColumn =
                 new TextColumnWithTooltip<GlusterVolumeOptionEntity>() {
@@ -47,6 +55,12 @@
                         return option.getValue();
                     }
                 };
+        optionValueColumn.makeSortable(new 
Comparator<GlusterVolumeOptionEntity>() {
+            @Override
+            public int compare(GlusterVolumeOptionEntity o1, 
GlusterVolumeOptionEntity o2) {
+                return o1.getValue().compareTo(o2.getValue());
+            }
+        });
         getTable().addColumn(optionValueColumn, 
constants.optionValueVolumeParameter(), "400px"); //$NON-NLS-1$;
 
         getTable().addActionButton(new 
WebAdminButtonDefinition<GlusterVolumeOptionEntity>(constants.addVolumeParameter())
 {


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

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

Reply via email to