Class DatabaseGenericInstanceQuery
java.lang.Object
org.flowable.common.engine.impl.db.ListQueryParameterObject
com.flowable.serviceregistry.engine.impl.invoker.db.DatabaseGenericInstanceQuery
- Author:
- Filip Hrisafov
-
Nested Class Summary
Nested classes/interfaces inherited from class org.flowable.common.engine.impl.db.ListQueryParameterObject
ListQueryParameterObject.OrderBy, ListQueryParameterObject.ResultType
-
Field Summary
Modifier and TypeFieldDescriptionprotected Collection<String>
protected String
protected String
protected Collection<JoinTableConfig>
protected String
protected Collection<? extends Collection<String>>
protected String
protected Collection<String>
protected String
protected Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent>
Fields inherited from class org.flowable.common.engine.impl.db.ListQueryParameterObject
databaseType, DEFAULT_ORDER_BY, defaultOrderBy, firstResult, maxResults, nullHandlingColumn, nullHandlingOnOrder, orderByCollection, orderProperty, parameter, resultType, SORTORDER_ASC, SORTORDER_DESC
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addOrder
(OrderParameter orderParameter) protected String
static Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent>
createWhereClause
(FilterDefinitionMember filterDefinitionMember, Function<QueryColumnMapping, QueryParameter> queryParameterProducer) Recursively flattens the tree of FilterDefinitionMembers into a flat list of 'components' which can be set to aDatabaseGenericInstanceQuery
to be used in the sqlmap to dynamically generate the where clause.getQuery()
Collection<? extends Collection<String>>
Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent>
void
setAccessibleByGroups
(Collection<String> accessibleByGroups) void
setAccessibleByUser
(String accessibleByUser) void
setIdentityLinkType
(String identityLinkType) void
setJoinTables
(Collection<JoinTableConfig> joinTables) void
setLookupIdColumnName
(String lookupIdColumnName) void
setSafeAccessibleByGroups
(Collection<? extends Collection<String>> safeAccessibleByGroups) void
setScopeType
(String scopeType) void
setSelectColumnNames
(Collection<String> selectColumnNames) void
setTableName
(String tableName) void
setWhereClauseComponents
(Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> whereClauseComponents) Methods inherited from class org.flowable.common.engine.impl.db.ListQueryParameterObject
addOrder, getDatabaseType, getFirstResult, getFirstRow, getLastRow, getMaxResults, getNullHandlingColumn, getOrderBy, getOrderByCollectionSafe, getOrderByForWindow, getOuterJoinOrderBy, getParameter, hasOrderBy, hasOrderByForColumn, isNeedsPaging, mapOrderByToSql, setDatabaseType, setFirstResult, setMaxResults, setNullHandlingColumn, setParameter
-
Field Details
-
tableName
-
lookupIdColumnName
-
scopeType
-
whereClauseComponents
protected Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> whereClauseComponents -
accessibleByUser
-
accessibleByGroups
-
safeAccessibleByGroups
-
identityLinkType
-
joinTables
-
selectColumnNames
-
-
Constructor Details
-
DatabaseGenericInstanceQuery
public DatabaseGenericInstanceQuery()
-
-
Method Details
-
addOrder
-
getTableName
-
setTableName
-
getLookupIdColumnName
-
setLookupIdColumnName
-
getScopeType
-
setScopeType
-
getWhereClauseComponents
public Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> getWhereClauseComponents() -
setWhereClauseComponents
public void setWhereClauseComponents(Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> whereClauseComponents) -
getAccessibleByUser
-
setAccessibleByUser
-
getAccessibleByGroups
-
setAccessibleByGroups
-
getSafeAccessibleByGroups
-
setSafeAccessibleByGroups
public void setSafeAccessibleByGroups(Collection<? extends Collection<String>> safeAccessibleByGroups) -
getIdentityLinkType
-
setIdentityLinkType
-
getJoinTables
-
setJoinTables
-
getSelectColumnNames
-
setSelectColumnNames
-
buildOrderBy
- Overrides:
buildOrderBy
in classListQueryParameterObject
-
getQuery
-
createWhereClause
public static Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> createWhereClause(FilterDefinitionMember filterDefinitionMember, Function<QueryColumnMapping, QueryParameter> queryParameterProducer) Recursively flattens the tree of FilterDefinitionMembers into a flat list of 'components' which can be set to aDatabaseGenericInstanceQuery
to be used in the sqlmap to dynamically generate the where clause. Generates bracket literals for nested parameters and takes care of producing the correct sequence of brackets and logical operators and clauses.This approach is used, because mybatis does not allow to recursively create sql snippets in the sqlmap. Therefor we do the recursion here to create a sequence of components which can be iterated0 in the sqlmap.
-