public interface SearchPredicateFactoryContext
This is the main entry point to the predicate DSL.
| Modifier and Type | Method and Description |
|---|---|
BooleanJunctionPredicateContext |
bool()
Match documents if they match a combination of boolean clauses.
|
SearchPredicateTerminalContext |
bool(Consumer<? super BooleanJunctionPredicateContext> clauseContributor)
Match documents if they match a combination of boolean clauses,
which will be defined by the given consumer.
|
ExistsPredicateContext |
exists()
Match documents where a given field exists.
|
SearchPredicateFactoryExtensionContext |
extension()
Create a context allowing to try to apply multiple extensions one after the other,
failing only if none of the extensions is supported.
|
<T> T |
extension(SearchPredicateFactoryContextExtension<T> extension)
Extend the current context with the given extension,
resulting in an extended context offering different types of predicates.
|
MatchIdPredicateContext |
id()
Match documents where the identifier is among the given values.
|
MatchPredicateContext |
match()
Match documents where targeted fields have a value that "matches" a given single value.
|
MatchAllPredicateContext |
matchAll()
Match all documents.
|
NestedPredicateContext |
nested()
Match documents where a
nested object
matches a given predicate. |
PhrasePredicateContext |
phrase()
Match documents where targeted fields have a value that contains a given phrase.
|
RangePredicateContext |
range()
Match documents where targeted fields have a value within lower and upper bounds.
|
SimpleQueryStringPredicateContext |
simpleQueryString()
Match documents according to a given query string,
with a simple query language adapted to end users.
|
SpatialPredicateContext |
spatial()
Access the different types of spatial predicates.
|
WildcardPredicateContext |
wildcard()
Match documents where targeted fields contain a term that matches a given pattern,
such as
inter*on or pa?t. |
MatchAllPredicateContext matchAll()
get the resulting predicate.MatchAllPredicateContextMatchIdPredicateContext id()
get the resulting predicate.MatchIdPredicateContextBooleanJunctionPredicateContext bool()
get the resulting predicate.BooleanJunctionPredicateContextSearchPredicateTerminalContext bool(Consumer<? super BooleanJunctionPredicateContext> clauseContributor)
Best used with lambda expressions.
clauseContributor - A consumer that will add clauses to the context passed in parameter.
Should generally be a lambda expression.SearchPredicateBooleanJunctionPredicateContextMatchPredicateContext match()
Note that "value matching" may be exact or approximate depending on the type of the targeted fields: numeric fields in particular imply exact matches, while analyzed, full-text fields imply approximate matches depending on how they are analyzed.
get the resulting predicate.MatchPredicateContextRangePredicateContext range()
get the resulting predicate.RangePredicateContextPhrasePredicateContext phrase()
get the resulting predicate.PhrasePredicateContextWildcardPredicateContext wildcard()
inter*on or pa?t.
Note that such patterns are not analyzed, thus any character that is not a wildcard must match exactly the content of the index (including uppercase letters, diacritics, ...).
get the resulting predicate.WildcardPredicateContextNestedPredicateContext nested()
nested object
matches a given predicate.get the resulting predicate.NestedPredicateContextSimpleQueryStringPredicateContext simpleQueryString()
Note that by default, unless the query string contains explicit operators,
documents will match if any term mentioned in the query string is present in the document (OR operator).
This makes sense when sorting results by relevance, but is not ideal otherwise.
See SimpleQueryStringPredicateTerminalContext.withAndAsDefaultOperator() to change this behavior.
get the resulting predicate.SimpleQueryStringPredicateContextExistsPredicateContext exists()
Fields are considered to exist in a document when they have at least one non-null value in this document.
get the resulting predicate.ExistsPredicateContextSpatialPredicateContext spatial()
SpatialPredicateContext<T> T extension(SearchPredicateFactoryContextExtension<T> extension)
T - The type of context provided by the extension.extension - The extension to the predicate DSL.SearchException - If the extension cannot be applied (wrong underlying backend, ...).SearchPredicateFactoryExtensionContext extension()
If you only need to apply a single extension and fail if it is not supported,
use the simpler extension(SearchPredicateFactoryContextExtension) method instead.
Copyright © 2006-2019 Red Hat, Inc. and others. Licensed under the GNU Lesser General Public License (LGPL), version 2.1 or later.