From a52ecfa6ff12ca97fc9b9ef47385406d7285e95f Mon Sep 17 00:00:00 2001 From: Alessandro Benedetti Date: Tue, 29 Oct 2019 16:24:05 +0100 Subject: [PATCH] [MNT-21015] improved approach in purpose bits checking --- .../solr/component/RewriteFacetParametersComponent.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/search-services/alfresco-search/src/main/java/org/alfresco/solr/component/RewriteFacetParametersComponent.java b/search-services/alfresco-search/src/main/java/org/alfresco/solr/component/RewriteFacetParametersComponent.java index 33de8a9fb..2288f8931 100644 --- a/search-services/alfresco-search/src/main/java/org/alfresco/solr/component/RewriteFacetParametersComponent.java +++ b/search-services/alfresco-search/src/main/java/org/alfresco/solr/component/RewriteFacetParametersComponent.java @@ -439,7 +439,11 @@ public class RewriteFacetParametersComponent extends SearchComponent Map fieldMappings, SolrQueryRequest req) { String shardPurpose = req.getParams().get(ShardParams.SHARDS_PURPOSE); - boolean isRefinementRequest = (shardPurpose!=null)?(shardPurpose.equals(String.valueOf(ShardRequest.PURPOSE_REFINE_FACETS))) || (shardPurpose.equals(String.valueOf(ShardRequest.PURPOSE_REFINE_PIVOT_FACETS))):false; + boolean isRefinementRequest = false; + if(shardPurpose!=null){ + int shardPurposeCode = Integer.parseInt(shardPurpose); + isRefinementRequest = ((shardPurposeCode & ShardRequest.PURPOSE_REFINE_FACETS) != 0) || ((shardPurposeCode & ShardRequest.PURPOSE_REFINE_PIVOT_FACETS) != 0); + } String[] facetFieldsOrig = params.getParams(paramName); List facetFieldList = new ArrayList<>(); if(facetFieldsOrig != null)