Class RecordQuery.Builder
- java.lang.Object
-
- com.apple.foundationdb.record.query.RecordQuery.Builder
-
- Enclosing class:
- RecordQuery
public static class RecordQuery.Builder extends Object
A builder forRecordQuery
.RecordQuery.newBuilder() .setRecordType("MyRecord") .setFilter(Query.and( Query.field("str_value").equalsValue("xyz"), Query.field("num_value").equalsValue(123))) .setSort(field("rec_no")) .build()
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
Builder()
protected
Builder(RecordQuery query)
-
Method Summary
-
-
-
Constructor Detail
-
Builder
protected Builder()
-
Builder
protected Builder(RecordQuery query)
-
-
Method Detail
-
build
public RecordQuery build()
-
getRecordTypes
@Nonnull public Collection<String> getRecordTypes()
-
setRecordTypes
public RecordQuery.Builder setRecordTypes(@Nonnull Collection<String> recordTypes)
-
setRecordType
public RecordQuery.Builder setRecordType(@Nonnull String recordType)
-
getAllowedIndexes
@Nullable public Collection<String> getAllowedIndexes()
-
setAllowedIndexes
public RecordQuery.Builder setAllowedIndexes(@Nullable Collection<String> allowedIndexes)
Define the indexes that the planner can consider when planning the query. If set, the allowed indexes override the index queryability filter.- Parameters:
allowedIndexes
- a collection of index names- Returns:
- this builder
-
setAllowedIndex
public RecordQuery.Builder setAllowedIndex(@Nullable String allowedIndex)
-
setIndexQueryabilityFilter
public RecordQuery.Builder setIndexQueryabilityFilter(@Nonnull IndexQueryabilityFilter queryabilityFilter)
Set a function that defines whether each index should be used by the query planner. Note that if allowed indexes are used then the queryability filter is ignored. The default index queryability filter isIndexQueryabilityFilter.DEFAULT
.- Parameters:
queryabilityFilter
- a queryability filter to use- Returns:
- this builder
-
getFilter
@Nullable public QueryComponent getFilter()
-
setFilter
public RecordQuery.Builder setFilter(@Nullable QueryComponent filter)
-
getSort
@Nullable public KeyExpression getSort()
-
isSortReverse
public boolean isSortReverse()
-
setSort
public RecordQuery.Builder setSort(@Nullable KeyExpression sort, boolean sortReverse)
-
setSort
public RecordQuery.Builder setSort(@Nullable KeyExpression sort)
-
setRemoveDuplicates
public RecordQuery.Builder setRemoveDuplicates(boolean removeDuplicates)
-
getRequiredResults
@Nullable public List<KeyExpression> getRequiredResults()
-
setRequiredResults
public RecordQuery.Builder setRequiredResults(@Nullable List<KeyExpression> requiredResults)
-
-