Class Query
- java.lang.Object
-
- com.lucidworks.search.dsl.DslBase
-
- com.lucidworks.search.dsl.request.DslCloneable
-
- com.lucidworks.search.dsl.request.query.Query
-
- Direct Known Subclasses:
AbstractLeafQuery
,BoostQuery
,CompoundQuery
,GraphQuery
,JoinQuery
,NegateQuery
public abstract class Query extends DslCloneable
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract Query
clone()
abstract java.util.List<Query>
getChildQueries()
Returns all the children of the query in question.abstract boolean
isEmptyQuery()
abstract boolean
removeChildQuery(Query toRemove)
Remove 'toRemove', if 'toRemove' is currently a child of this Query object.abstract boolean
replaceChildQuery(Query toReplace, Query replacement)
Swap 'replacement' in as a replacement, if 'toReplace' is currently a child of this Query object.-
Methods inherited from class com.lucidworks.search.dsl.request.DslCloneable
clone, deepClone
-
-
-
-
Method Detail
-
getChildQueries
public abstract java.util.List<Query> getChildQueries()
Returns all the children of the query in question. The returnedList
is provided as a copy - changes made to it do not impact the originating Query object in any way.
-
replaceChildQuery
public abstract boolean replaceChildQuery(Query toReplace, Query replacement)
Swap 'replacement' in as a replacement, if 'toReplace' is currently a child of this Query object. Because a tree of Query objects might conceivably have repeated clauses, this method is implemented to test 'toReplace' using reference-equality instead of value-equality.- Returns:
- true if a replacement was made, false otherwise.
-
removeChildQuery
public abstract boolean removeChildQuery(Query toRemove)
Remove 'toRemove', if 'toRemove' is currently a child of this Query object. Because a tree of Query objects might conceivably have repeated clauses, this method is implemented to test 'toRemove' using reference-equality instead of value-equality.- Returns:
- true if a removal was made, false otherwise.
-
isEmptyQuery
public abstract boolean isEmptyQuery()
- Returns:
- true if this query is now essentially "empty" (doesn't affect query logic at all) and can now be removed from the query tree. This can happen, for example, if all child queries were removed and the query logic depends on having at least one child query.
-
clone
public abstract Query clone()
- Specified by:
clone
in classDslCloneable
-
-