public class SqlPredicate extends Object implements IndexAwarePredicate, VisitablePredicate, IdentifiedDataSerializable
Constructor and Description |
---|
SqlPredicate() |
SqlPredicate(String sql) |
Modifier and Type | Method and Description |
---|---|
Predicate |
accept(Visitor visitor,
Indexes indexes)
Accept visitor.
|
boolean |
apply(Map.Entry mapEntry)
Applies this predicate to the given map entry.
|
boolean |
equals(Object o) |
Set<QueryableEntry> |
filter(QueryContext queryContext)
Produces a filtered entry set by utilizing the indexes available while
executing the query in the given query context.
|
int |
getFactoryId()
Returns DataSerializableFactory factory ID for this class.
|
int |
getId()
Returns type identifier for this class.
|
Predicate |
getPredicate() |
int |
hashCode() |
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.
|
void |
readData(ObjectDataInput in)
Reads fields from the input stream
|
String |
toString() |
void |
writeData(ObjectDataOutput out)
Writes object fields to output stream
|
public SqlPredicate(String sql)
public SqlPredicate()
public boolean apply(Map.Entry mapEntry)
Predicate
Implementations must be thread-safe, since this method may be called by multiple threads concurrently.
public boolean isIndexed(QueryContext queryContext)
IndexAwarePredicate
isIndexed
in interface IndexAwarePredicate
queryContext
- 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 Set<QueryableEntry> filter(QueryContext queryContext)
IndexAwarePredicate
The query engine assumes this method produces the result set faster than a simple evaluation of the predicate on every entry.
filter
in interface IndexAwarePredicate
queryContext
- the query context to access the indexes.public void writeData(ObjectDataOutput out) throws IOException
DataSerializable
writeData
in interface DataSerializable
out
- 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
DataSerializable
readData
in interface DataSerializable
in
- inputIOException
- if an I/O error occurs. In particular,
an IOException
may be thrown if the
input stream has been closed.public Predicate accept(Visitor visitor, Indexes indexes)
VisitablePredicate
accept
in interface VisitablePredicate
visitor
- visitor to acceptindexes
- indexespublic Predicate getPredicate()
public int getFactoryId()
IdentifiedDataSerializable
getFactoryId
in interface IdentifiedDataSerializable
public int getId()
IdentifiedDataSerializable
getId
in interface IdentifiedDataSerializable
Copyright © 2018 Hazelcast, Inc.. All Rights Reserved.