[rhq] modules/enterprise

John Sanda jsanda at fedoraproject.org
Mon Aug 20 15:43:48 UTC 2012


 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java |   15 +++++++---
 1 file changed, 11 insertions(+), 4 deletions(-)

New commits:
commit 5d472dceb665ec2e4b8b8c528c59c8c8b354d40d
Author: John Sanda <jsanda at redhat.com>
Date:   Mon Aug 20 11:39:51 2012 -0400

    [BZ 848893] Only hide empty groups for availability queries/searches
    
    This regression was introduced during the work for BZ 826493. While
    testing the changes for this commit, I came across another, related
    issue where an empty compatible group does not show up in the compatible
    groups view. It does however show up in the mixed groups view. An empty
    mixed group appears in the mixed group view. This issue is already
    logged under BZ 708929.

diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
index e269475..a799311 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupCompositeDataSource.java
@@ -50,7 +50,6 @@ import org.rhq.enterprise.gui.coregui.client.ImageManager;
 import org.rhq.enterprise.gui.coregui.client.Messages;
 import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
 import org.rhq.enterprise.gui.coregui.client.gwt.ResourceGroupGWTServiceAsync;
-import org.rhq.enterprise.gui.coregui.client.util.Log;
 import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
 import org.rhq.enterprise.gui.coregui.client.util.message.Message;
 
@@ -125,12 +124,16 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
                     processResponse(request.getRequestId(), response);
                 }
                 
-                private PageList<ResourceGroupComposite> filterEmptyMemberGroups(PageList<ResourceGroupComposite> result){
+                private PageList<ResourceGroupComposite> applyAvailabilitySearchFilter(
+                    PageList<ResourceGroupComposite> result){
 
+                    if (!isAvailabilitySearch(criteria)) {
+                        return result;
+                    }
                     PageList<ResourceGroupComposite> pageList = new PageList<ResourceGroupComposite>(result.getPageControl());
 
                     for (ResourceGroupComposite rgc : result) {
-                        if (rgc.getExplicitCount() > 0 ){
+                        if (rgc.getExplicitCount() > 0) {
                             pageList.add(rgc);
                         }
                     }
@@ -139,7 +142,7 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
                 }
 
                 public void onSuccess(PageList<ResourceGroupComposite> result) {
-                    PageList<ResourceGroupComposite> filteredResult =    filterEmptyMemberGroups(result);
+                    PageList<ResourceGroupComposite> filteredResult = applyAvailabilitySearchFilter(result);
                     response.setData(buildRecords(filteredResult));
                     response.setTotalRows(filteredResult.getTotalSize()); // for paging to work we have to specify size of full result set
                     processResponse(request.getRequestId(), response);
@@ -147,6 +150,10 @@ public class ResourceGroupCompositeDataSource extends RPCDataSource<ResourceGrou
             });
     }
 
+    private boolean isAvailabilitySearch(ResourceGroupCriteria criteria) {
+        return criteria.getSearchExpression() != null && criteria.getSearchExpression().startsWith("availability");
+    }
+
     @Override
     protected ResourceGroupCriteria getFetchCriteria(final DSRequest request) {
         ResourceGroupCriteria criteria = new ResourceGroupCriteria();




More information about the rhq-commits mailing list