Class DatabaseGenericInstanceQuery

    • Field Detail

      • tableName

        protected String tableName
      • lookupIdColumnName

        protected String lookupIdColumnName
      • scopeType

        protected String scopeType
      • whereClauseComponents

        protected Collection<com.flowable.serviceregistry.engine.impl.invoker.db.WhereClauseComponent> whereClauseComponents
      • accessibleByUser

        protected String accessibleByUser
      • identityLinkType

        protected String identityLinkType
    • Constructor Detail

      • DatabaseGenericInstanceQuery

        public DatabaseGenericInstanceQuery()
    • Method Detail

      • getTableName

        public String getTableName()
      • setTableName

        public void setTableName​(String tableName)
      • getLookupIdColumnName

        public String getLookupIdColumnName()
      • setLookupIdColumnName

        public void setLookupIdColumnName​(String lookupIdColumnName)
      • getScopeType

        public String getScopeType()
      • setScopeType

        public void setScopeType​(String scopeType)
      • 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

        public String getAccessibleByUser()
      • setAccessibleByUser

        public void setAccessibleByUser​(String accessibleByUser)
      • setAccessibleByGroups

        public void setAccessibleByGroups​(Collection<String> accessibleByGroups)
      • setSafeAccessibleByGroups

        public void setSafeAccessibleByGroups​(Collection<? extends Collection<String>> safeAccessibleByGroups)
      • getIdentityLinkType

        public String getIdentityLinkType()
      • setIdentityLinkType

        public void setIdentityLinkType​(String identityLinkType)
      • setSelectColumnNames

        public void setSelectColumnNames​(Collection<String> selectColumnNames)
      • 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 a DatabaseGenericInstanceQuery 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.