public class SolrQueryBuilder extends QueryBuilder
| Constructor and Description |
|---|
SolrQueryBuilder()
Default constructor.
|
SolrQueryBuilder(java.lang.String workflowName)
Constructor.
|
SolrQueryBuilder(java.lang.String workflowName,
DataFactory factory)
Constructor.
|
SolrQueryBuilder(java.lang.String workflowName,
Record request)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
SolrQueryBuilder |
addFields(java.lang.String... fields)
Add fields parameter.
|
AnyMap |
addFilterGroup(java.lang.String filterGroupName) |
AnyMap |
addFilterGroupLocalParam(java.lang.String filterGroupName,
java.lang.Object... params)
Adds the given params to the local params map of the filter group.
|
SolrQueryBuilder |
addFilterQuery(java.lang.String filterQuery)
Adds a native solr filter query.
|
void |
addNativeParam(java.lang.String parameterName,
java.lang.Object parameterValue)
Adds the given name-value as a parameter to the native parameter map.
|
SolrResultAccessor |
executeRequest(SearchService searchService)
execute query on given search service and wrap result in high level result helper.
|
void |
setMoreLikeThis(AnyMap mltArgs)
This will add the parameters to the _solr.query map and name it
SolrConstants.MORE_LIKE_THIS. |
void |
setNativeParam(java.lang.String parameterName,
java.lang.Object parameterValue)
Sets the given name-value pair, posisbly overriding an existing one under the same key.
|
SolrQueryBuilder |
setQueryFindAll()
Set the *:* as the query string to find all documents.
|
SolrQueryBuilder |
setRequestHandler(java.lang.String name)
Set the request handler.
|
SolrQueryBuilder |
setRows(int rows)
Set rows parameter.
|
SolrQueryBuilder |
setShards(java.lang.String... shards)
Set shards.
|
SolrQueryBuilder |
setStart(int start)
Set start parameter.
|
addAllOfFilter, addAtLeastFilter, addAtMostFilter, addAttributeConfig, addBoundFilter, addFacetByAttribute, addFacetByAttribute, addFacetByConfig, addFilter, addGreaterThanFilter, addGroupByAttribute, addGroupByAttribute, addGroupByAttribute, addGroupByConfig, addGroupByConfig, addGroupByConfig, addHighlightByAttribute, addHighlightByConfig, addLessThanFilter, addListFilter, addNoneOfFilter, addOneOfFilter, addParameter, addRangeFilter, addResultAttributes, addSortBy, executeRequestXml, executeRequestXmlString, getFactory, getMetadata, getQuery, getWorkflowName, setAttachment, setId, setIndexName, setLanguage, setMaxCount, setOffset, setParameter, setQuery, setQueryAttribute, setRanking, setResultAttributes, setThresholdpublic SolrQueryBuilder()
public SolrQueryBuilder(java.lang.String workflowName)
workflowName - the workflow workflow name.public SolrQueryBuilder(java.lang.String workflowName,
DataFactory factory)
workflowName - the workflow name.factory - the data factory.public SolrQueryBuilder(java.lang.String workflowName,
Record request)
workflowName - the workflow name.request - the request record.public SolrQueryBuilder setStart(int start)
start - the start parameter.public SolrQueryBuilder setRows(int rows)
rows - the rows parameter.public SolrQueryBuilder addFields(java.lang.String... fields)
fields - the fields parameter.public SolrQueryBuilder setRequestHandler(java.lang.String name)
name - The value given should start with a leading /. However, if it is missing it will be added. Blank values
will result in removing the request handler parameter (reset to default).public SolrQueryBuilder addFilterQuery(java.lang.String filterQuery)
filterQuery - the filter query.public SolrResultAccessor executeRequest(SearchService searchService) throws ProcessingException
executeRequest in class QueryBuildersearchService - search service instance.ProcessingException - any error while processing the searchQueryBuilder.executeRequest(org.eclipse.smila.search.api.SearchService)public SolrQueryBuilder setQueryFindAll()
public SolrQueryBuilder setShards(java.lang.String... shards)
shards - the shards.public void setMoreLikeThis(AnyMap mltArgs)
SolrConstants.MORE_LIKE_THIS. If the map
dosnt contain a value mlt then it will be added setting it to true, thus turning on MLT.mltArgs - public void addNativeParam(java.lang.String parameterName,
java.lang.Object parameterValue)
AnyMap.add(String, org.eclipse.smila.datamodel.Any) is used, which does some auto conversion to support
multiple values.parameterName - parameterValue - AnyMap#add(String, org.eclipse.smila.datamodel.Any)}public void setNativeParam(java.lang.String parameterName,
java.lang.Object parameterValue)
parameterName - the parameter nameparameterValue - the parameter valueaddNativeParam(String, Object)public AnyMap addFilterGroup(java.lang.String filterGroupName)
filterGroupQ - create - public AnyMap addFilterGroupLocalParam(java.lang.String filterGroupName, java.lang.Object... params)
filterGroupName - the filter group qparams - the objects are AnyUtil.objectToAny(param);