Class QueryDefinition
- java.lang.Object
- 
- com.lucidworks.search.dsl.DslBase
- 
- com.lucidworks.search.dsl.request.DslCloneable
- 
- com.lucidworks.search.dsl.request.query.QueryDefinition
 
 
 
- 
 public class QueryDefinition extends DslCloneable A container object for all queries in DSL request. There are following assumptions betweengetUserQuery()andgetMain():If getUserQuery()is set andgetMain()is not,getMain()will be set toTextQuerywithgetUserQuery()as a value.If getUserQuery()is set andgetMain()is set, assumption is thatgetMain()query contains someTextQuery(s) without a value which will default togetUserQuery()as a value.Expectation is for at least one of getUserQuery()andgetMain()fields to be populatedgetGroupedQuery()andgetGroupedFilters()are used in relation withResults.getGroup(). Expectation is forResults.getGroup()to be set if any of these queries are set.Note: keep in mind that not all of the queries that could be specified in DslRequestlocated here. Some are specific to a particular part of request and located there (for example "sort by" queries)
- 
- 
Constructor SummaryConstructors Constructor Description QueryDefinition(Query main, java.util.List<BoostByValue> boostsByValues, java.util.List<BoostQuery> boostsByQuery, java.util.List<FunctionQuery> boostsByFunction, java.util.List<java.lang.String> boostsByDocId, java.lang.String userQuery, java.util.List<Query> filters, java.util.List<NamedFilter> namedFilters, Query groupedQuery, java.util.List<Query> groupedFilters)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddBoostByDocId(java.lang.String docId)voidaddBoostByQuery(BoostQuery boostQuery)voidaddBoostByValues(BoostByValue boostByValues)voidaddFilter(Query filter)QueryDefinitionclone()java.util.List<java.lang.String>getBoostsByDocId()java.util.List<FunctionQuery>getBoostsByFunction()java.util.List<BoostQuery>getBoostsByQuery()java.util.List<BoostByValue>getBoostsByValues()java.util.List<Query>getFilters()java.util.List<Query>getGroupedFilters()QuerygetGroupedQuery()QuerygetMain()java.util.List<NamedFilter>getNamedFilters()Filters with associated names.java.lang.StringgetUserQuery()voidsetBoostsByDocId(java.util.List<java.lang.String> boostsByDocId)voidsetBoostsByQuery(java.util.List<BoostQuery> boostsByQuery)voidsetBoostsByValues(java.util.List<BoostByValue> boostsByValues)voidsetFilters(java.util.List<Query> filters)voidsetMain(Query main)- 
Methods inherited from class com.lucidworks.search.dsl.request.DslCloneableclone, deepClone
 
- 
 
- 
- 
- 
Constructor Detail- 
QueryDefinitionpublic QueryDefinition(Query main, java.util.List<BoostByValue> boostsByValues, java.util.List<BoostQuery> boostsByQuery, java.util.List<FunctionQuery> boostsByFunction, java.util.List<java.lang.String> boostsByDocId, java.lang.String userQuery, java.util.List<Query> filters, java.util.List<NamedFilter> namedFilters, Query groupedQuery, java.util.List<Query> groupedFilters) 
 
- 
 - 
Method Detail- 
getMainpublic Query getMain() - Returns:
- main query that defines the base result set and document scores for this request. If null, defaults to
 TextQuerywithgetUserQuery()value
 
 - 
setMainpublic void setMain(Query main) 
 - 
getBoostsByValuespublic java.util.List<BoostByValue> getBoostsByValues() - Returns:
- a list of fields and boost values that will be used in combination
 with getBoostsByQuery()and will be added togetMain()to influence the score. Boosts by query and value have no impact on the result set.
 
 - 
getBoostsByQuerypublic java.util.List<BoostQuery> getBoostsByQuery() - Returns:
- a list of additional queries that that will be used in combination
 with getBoostsByValues()and will be added togetMain()to influence the score. Boosts by query and value have no impact on the result set.
 
 - 
getBoostsByFunctionpublic java.util.List<FunctionQuery> getBoostsByFunction() 
 - 
getUserQuerypublic java.lang.String getUserQuery() - Returns:
- actual user query that is used in combination with getMain()
 
 - 
getFilterspublic java.util.List<Query> getFilters() - Returns:
- a list of filter queries used to narrow the base result set. Filters have no impact on document scoring.
 
 - 
getNamedFilterspublic java.util.List<NamedFilter> getNamedFilters() Filters with associated names. These filters are treated identically to the values ingetFilters()- they are used to narrow the base result set and have no impact on scoring. Additionally however, filters in this list are paired with names that allow them to be manipulated by other features. SeeFacetDomain.getExcludedFiltersByName()for an example.
 - 
setFilterspublic void setFilters(java.util.List<Query> filters) 
 - 
addFilterpublic void addFilter(Query filter) 
 - 
setBoostsByValuespublic void setBoostsByValues(java.util.List<BoostByValue> boostsByValues) 
 - 
addBoostByValuespublic void addBoostByValues(BoostByValue boostByValues) 
 - 
getGroupedQuerypublic Query getGroupedQuery() - Returns:
- overrides getMain()for group details.Results.getGroup()has to be setThis field is ignored with "hint.grouping.method=group". 
 
 - 
getGroupedFilterspublic java.util.List<Query> getGroupedFilters() - Returns:
- overrides getFilters()for group details.Results.getGroup()has to be setThis field is ignored with "hint.grouping.method=group". 
 
 - 
setBoostsByQuerypublic void setBoostsByQuery(java.util.List<BoostQuery> boostsByQuery) 
 - 
addBoostByQuerypublic void addBoostByQuery(BoostQuery boostQuery) 
 - 
getBoostsByDocIdpublic java.util.List<java.lang.String> getBoostsByDocId() - Returns:
- A list of Solr document IDs which will be boosted to the top of the query results, if they match, using the Query Elevation Component in Solr
 
 - 
setBoostsByDocIdpublic void setBoostsByDocId(java.util.List<java.lang.String> boostsByDocId) 
 - 
addBoostByDocIdpublic void addBoostByDocId(java.lang.String docId) 
 - 
clonepublic QueryDefinition clone() - Specified by:
- clonein class- DslCloneable
 
 
- 
 
-