Class PlatformIndexQueryBuilder<REQ extends PlatformIndexQueryRequest>
- java.lang.Object
-
- com.flowable.platform.service.index.PlatformIndexQueryBuilder<REQ>
-
- Direct Known Subclasses:
CaseInstancesIndexQueryBuilder,ProcessInstancesIndexQueryBuilder,TasksIndexQueryBuilder,WorkInstancesIndexQueryBuilder
public abstract class PlatformIndexQueryBuilder<REQ extends PlatformIndexQueryRequest> extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected com.fasterxml.jackson.databind.node.ObjectNodecustomQueryprotected java.util.Map<java.lang.String,SortParameter>customSortParametersprotected com.fasterxml.jackson.databind.ObjectMapperobjectMapperprotected java.lang.Stringorderprotected java.lang.Stringsort
-
Constructor Summary
Constructors Constructor Description PlatformIndexQueryBuilder(com.fasterxml.jackson.databind.ObjectMapper objectMapper)PlatformIndexQueryBuilder(com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.fasterxml.jackson.databind.node.ObjectNode customQuery, java.util.Map<java.lang.String,SortParameter> customSortParameters)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract java.lang.Stringbuild(REQ request)protected java.lang.StringdetermineOrder(org.flowable.common.rest.api.PaginateRequest request)protected java.lang.StringdetermineSort(org.flowable.common.rest.api.PaginateRequest request, java.lang.String defaultSort)com.fasterxml.jackson.databind.node.ObjectNodegetCustomQuery()java.util.Map<java.lang.String,SortParameter>getCustomSortParameters()protected java.lang.StringgetIndexSortName(java.lang.String sort)Method that custom query builder can override to provide an alternative sort name for a particular sort.java.lang.StringgetOrder()protected FilteredFullTextSearchQueryBuildergetQueryBuilder(REQ request, java.lang.String defaultSort)java.lang.StringgetSort()protected java.lang.StringparameterTypeToIndexedProperty(SortParameter sortParameter)protected voidprocessSorting(PlatformIndexQueryRequest request, java.lang.String defaultSort, FilteredFullTextSearchQueryBuilder queryBuilder)voidsetCustomQuery(com.fasterxml.jackson.databind.node.ObjectNode customQuery)voidsetCustomSortParameters(java.util.Map<java.lang.String,SortParameter> customSortParameters)
-
-
-
Field Detail
-
objectMapper
protected com.fasterxml.jackson.databind.ObjectMapper objectMapper
-
customQuery
protected com.fasterxml.jackson.databind.node.ObjectNode customQuery
-
sort
protected java.lang.String sort
-
customSortParameters
protected java.util.Map<java.lang.String,SortParameter> customSortParameters
-
order
protected java.lang.String order
-
-
Constructor Detail
-
PlatformIndexQueryBuilder
public PlatformIndexQueryBuilder(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
-
PlatformIndexQueryBuilder
public PlatformIndexQueryBuilder(com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.fasterxml.jackson.databind.node.ObjectNode customQuery, java.util.Map<java.lang.String,SortParameter> customSortParameters)
-
-
Method Detail
-
build
protected abstract java.lang.String build(REQ request)
-
getQueryBuilder
protected FilteredFullTextSearchQueryBuilder getQueryBuilder(REQ request, java.lang.String defaultSort)
-
processSorting
protected void processSorting(PlatformIndexQueryRequest request, java.lang.String defaultSort, FilteredFullTextSearchQueryBuilder queryBuilder)
-
getIndexSortName
protected java.lang.String getIndexSortName(java.lang.String sort)
Method that custom query builder can override to provide an alternative sort name for a particular sort. For example when sorting by name the sort should be done by nameKeyword instead.- Parameters:
sort- the requested sort- Returns:
- the sort that should be used
-
determineSort
protected java.lang.String determineSort(org.flowable.common.rest.api.PaginateRequest request, java.lang.String defaultSort)
-
determineOrder
protected java.lang.String determineOrder(org.flowable.common.rest.api.PaginateRequest request)
-
getOrder
public java.lang.String getOrder()
-
getSort
public java.lang.String getSort()
-
parameterTypeToIndexedProperty
protected java.lang.String parameterTypeToIndexedProperty(SortParameter sortParameter)
-
getCustomQuery
public com.fasterxml.jackson.databind.node.ObjectNode getCustomQuery()
-
setCustomQuery
public void setCustomQuery(com.fasterxml.jackson.databind.node.ObjectNode customQuery)
-
getCustomSortParameters
public java.util.Map<java.lang.String,SortParameter> getCustomSortParameters()
-
setCustomSortParameters
public void setCustomSortParameters(java.util.Map<java.lang.String,SortParameter> customSortParameters)
-
-