Class IckleQueryWhereClauses


  • public class IckleQueryWhereClauses
    extends Object
    This class provides knowledge on how to build Ickle query where clauses for specified SearchableModelField. For example,

    for ClientModel.SearchableFields.CLIENT_ID we use IckleQueryOperators.ExpressionCombinator for obtained ModelCriteriaBuilder.Operator and use it with field name corresponding to ClientModel.SearchableFields.CLIENT_ID

    however, for ClientModel.SearchableFields.ATTRIBUTE we need to compare attribute name and attribute value so we create where clause similar to the following: (attributes.name = :attributeName) AND ( attributes.value = :attributeValue )

    • Constructor Detail

      • IckleQueryWhereClauses

        public IckleQueryWhereClauses()
    • Method Detail

      • produceWhereClause

        public static String produceWhereClause​(org.keycloak.storage.SearchableModelField<?> modelField,
                                                ModelCriteriaBuilder.Operator op,
                                                Object[] values,
                                                Map<String,​Object> parameters)
        Produces where clause for given SearchableModelField, ModelCriteriaBuilder.Operator and values
        Parameters:
        modelField - model field
        op - operator
        values - searched values
        parameters - mapping between named parameters and corresponding values
        Returns:
        resulting where clause