Merged searchrep (5.2.1) to 5.2.N (5.2.1)

136733 msuzuki: Search-340, added mapping for tags and excludeFilters


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@137047 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Gethin James
2017-06-01 11:09:15 +00:00
parent 53adbf1d53
commit 3d8da9cf63
3 changed files with 58 additions and 22 deletions

View File

@@ -299,12 +299,6 @@ public class SolrJSONResultSet implements ResultSet, JSONResult
pivotFacets = buildPivot(facet_pivot, pivotName);
}
}
/*
* "0":4
* start:0
* end:100
*
*/
if(facet_counts.has("facet_ranges"))
{

View File

@@ -26,6 +26,24 @@
package org.alfresco.repo.search.impl.solr;
import static org.alfresco.util.SearchDateConversion.parseDateInterval;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.StringJoiner;
import javax.servlet.http.HttpServletResponse;
import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.opencmis.dictionary.CMISStrictDictionaryService;
import org.alfresco.repo.admin.RepositoryState;
@@ -91,21 +109,6 @@ import org.springframework.beans.factory.BeanFactoryAware;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.extensions.surf.util.I18NUtil;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.StringJoiner;
/**
* @author Andy
*/
@@ -839,6 +842,35 @@ public class SolrQueryHTTPClient implements BeanFactoryAware, InitializingBean
url.append("&facet.range.other=").append(encoder.encode(""+searchParameters.getRange().getOther(), "UTF-8"));
}
url.append("&facet.range.hardend=").append(encoder.encode(""+searchParameters.getRange().isHardend(), "UTF-8"));
if(!searchParameters.getRange().getExcludeFilters().isEmpty())
{
url.append("&range.field=");
if (searchParameters.getRange().getExcludeFilters() != null && !searchParameters.getRange().getExcludeFilters().isEmpty())
{
StringBuilder prefix = new StringBuilder("{!ex=");
Iterator<String> itr = searchParameters.getRange().getExcludeFilters().iterator();
while(itr.hasNext())
{
String val = itr.next();
prefix.append(val);
if(itr.hasNext())
{
prefix.append(",");
}
}
prefix.append("}");
url.append(prefix);
}
}
if(!searchParameters.getRange().getTags().isEmpty())
{
for(String tag:searchParameters.getRange().getTags())
{
url.append(String.format("&fq={!tag=%1$s}%1$s",tag));
}
}
}
}