public interface MapQueryEngine
Modifier and Type | Method and Description |
---|---|
QueryResult |
invokeQueryAllPartitions(String mapName,
Predicate predicate,
IterationType iterationType)
Queries all partitions.
|
QueryResult |
invokeQueryLocalPartitions(String mapName,
Predicate predicate,
IterationType iterationType)
Query all local partitions.
|
Set |
queryAllPartitionsWithPagingPredicate(String mapName,
PagingPredicate pagingPredicate,
IterationType iterationType)
Queries all partitions with a paging predicate.
|
QueryResult |
queryLocalPartition(String mapName,
Predicate predicate,
int partitionId,
IterationType iterationType)
Executes a query a specific local partition.
|
QueryResult |
queryLocalPartitions(String name,
Predicate predicate,
IterationType iterationType)
Executes a query on all the local partitions.
|
Set |
queryLocalPartitionsWithPagingPredicate(String mapName,
PagingPredicate pagingPredicate,
IterationType iterationType)
Query all local partitions with a paging predicate.
|
QueryResult queryLocalPartitions(String name, Predicate predicate, IterationType iterationType) throws ExecutionException, InterruptedException
name
- the name of the mappredicate
- the predicateExecutionException
InterruptedException
QueryResult queryLocalPartition(String mapName, Predicate predicate, int partitionId, IterationType iterationType)
todo: what happens when the partition is not local?
mapName
- map name.predicate
- any predicate.partitionId
- partition id.QueryResult invokeQueryLocalPartitions(String mapName, Predicate predicate, IterationType iterationType)
todo: we need better explanation of difference between this method and
queryLocalPartitions(String, Predicate, IterationType)
mapName
- map name.predicate
- except paging predicate.iterationType
- the IterationTypeQueryResult invokeQueryAllPartitions(String mapName, Predicate predicate, IterationType iterationType)
mapName
- map name.predicate
- except paging predicate.iterationType
- the IterationTypeSet queryLocalPartitionsWithPagingPredicate(String mapName, PagingPredicate pagingPredicate, IterationType iterationType)
todo: it would be better to have a single queryLocal... method and let the implementation figure out how to deal with a regular predicate and a paging predicate. No need to have that in the interface. The problem is that currently the signatures don't match up. This implementation detail should not be exposed through the interface.
mapName
- map name.pagingPredicate
- to queryOnMembers.iterationType
- type of IterationType
SortedQueryResultSet
Set queryAllPartitionsWithPagingPredicate(String mapName, PagingPredicate pagingPredicate, IterationType iterationType)
todo: it would be better to have single queryAll method and let the implementation figure out how to deal
with a paging predicate. See comment in queryLocalPartitionsWithPagingPredicate(java.lang.String, com.hazelcast.query.PagingPredicate, com.hazelcast.util.IterationType)
mapName
- map name.pagingPredicate
- to queryOnMembers.iterationType
- type of IterationType
SortedQueryResultSet
Copyright © 2016 Hazelcast, Inc.. All Rights Reserved.