final class FilterQueryUtilityImpl extends java.lang.Object implements FilterQueryUtility
Modifier and Type | Field and Description |
---|---|
private StringToDoubleConverter |
converter |
private double |
decimalTolerance |
Constructor and Description |
---|
FilterQueryUtilityImpl(SearchConfig config,
StringToDoubleConverter converter) |
Modifier and Type | Method and Description |
---|---|
private void |
addFilterQueries(org.apache.solr.client.solrj.SolrQuery query,
java.util.Map<java.lang.String,java.util.List<java.lang.String>> filters) |
private void |
addRangeQueries(org.apache.solr.client.solrj.SolrQuery query,
SearchRequest request) |
private double |
calculateDelta(double value,
boolean max) |
private java.lang.String |
createRangeQuery(java.lang.String taggedFieldName,
java.lang.String min,
java.lang.String max) |
private java.util.List<java.lang.String> |
escapeValues(java.util.List<java.lang.String> values) |
private java.lang.String |
getFilterQuery(java.lang.String fieldName,
java.util.List<java.lang.String> values) |
private java.lang.String |
getRangeQuery(java.util.Locale locale,
java.lang.String fieldName,
DoubleRange range) |
private java.lang.String |
getRangeQueryFieldName(SearchRequest request,
java.lang.String fieldName) |
private java.lang.String |
getSearchString(java.lang.String fieldName,
java.lang.Double value,
boolean max) |
org.apache.solr.client.solrj.SolrQuery |
setFilters(org.apache.solr.client.solrj.SolrQuery query,
SearchRequest request) |
private java.lang.String |
tagFieldName(java.lang.String fieldName) |
private final StringToDoubleConverter converter
private final double decimalTolerance
@Inject public FilterQueryUtilityImpl(SearchConfig config, StringToDoubleConverter converter)
public org.apache.solr.client.solrj.SolrQuery setFilters(org.apache.solr.client.solrj.SolrQuery query, SearchRequest request)
setFilters
in interface FilterQueryUtility
private void addRangeQueries(org.apache.solr.client.solrj.SolrQuery query, SearchRequest request)
private java.lang.String getRangeQueryFieldName(SearchRequest request, java.lang.String fieldName)
private java.lang.String getRangeQuery(java.util.Locale locale, java.lang.String fieldName, DoubleRange range)
private java.lang.String tagFieldName(java.lang.String fieldName)
private java.lang.String getSearchString(java.lang.String fieldName, java.lang.Double value, boolean max)
private double calculateDelta(double value, boolean max)
private java.lang.String createRangeQuery(java.lang.String taggedFieldName, java.lang.String min, java.lang.String max)
private void addFilterQueries(org.apache.solr.client.solrj.SolrQuery query, java.util.Map<java.lang.String,java.util.List<java.lang.String>> filters)
private java.util.List<java.lang.String> escapeValues(java.util.List<java.lang.String> values)
private java.lang.String getFilterQuery(java.lang.String fieldName, java.util.List<java.lang.String> values)