public class PredicateBuilder extends Object implements IndexAwarePredicate, DataSerializable
| Constructor and Description | 
|---|
| PredicateBuilder() | 
| Modifier and Type | Method and Description | 
|---|---|
| PredicateBuilder | and(Predicate predicate) | 
| boolean | apply(Map.Entry mapEntry)Applies this predicate to the given map entry. | 
| Set<QueryableEntry> | filter(QueryContext queryContext)Produces a filtered entry set by utilizing the indexes available while
 executing the query in the given query context. | 
| String | getAttribute() | 
| EntryObject | getEntryObject() | 
| boolean | isIndexed(QueryContext queryContext)Signals to the query engine that this predicate is able to utilize the
 indexes available while executing the query in the given query context. | 
| PredicateBuilder | or(Predicate predicate) | 
| void | readData(ObjectDataInput in)Reads fields from the input stream | 
| void | setAttribute(String attribute) | 
| String | toString() | 
| void | writeData(ObjectDataOutput out)Writes object fields to output stream | 
public String getAttribute()
public void setAttribute(String attribute)
public boolean apply(Map.Entry mapEntry)
PredicateImplementations must be thread-safe, since this method may be called by multiple threads concurrently.
public EntryObject getEntryObject()
public PredicateBuilder and(Predicate predicate)
public PredicateBuilder or(Predicate predicate)
public Set<QueryableEntry> filter(QueryContext queryContext)
IndexAwarePredicateThe query engine assumes this method produces the result set faster than a simple evaluation of the predicate on every entry.
filter in interface IndexAwarePredicatequeryContext - the query context to access the indexes. The passed
                     query context is valid only for a duration of a single
                     call to the method.public boolean isIndexed(QueryContext queryContext)
IndexAwarePredicateisIndexed in interface IndexAwarePredicatequeryContext - the query context to consult for the available
                     indexes.true if this predicate is able to use the indexes to
 speed up the processing, false otherwise.public void writeData(ObjectDataOutput out) throws IOException
DataSerializablewriteData in interface DataSerializableout - outputIOException - if an I/O error occurs. In particular,
                     an IOException may be thrown if the
                     output stream has been closed.public void readData(ObjectDataInput in) throws IOException
DataSerializablereadData in interface DataSerializablein - inputIOException - if an I/O error occurs. In particular,
                     an IOException may be thrown if the
                     input stream has been closed.Copyright © 2019 Hazelcast, Inc.. All Rights Reserved.