Class GenericCondition

    • Constructor Detail

      • GenericCondition

        public GenericCondition​(Operator operator)
        Parameters:
        operator -
    • Method Detail

      • checkOperator

        protected abstract void checkOperator()
        Performs a plausablity check on current Operator. Throws a IllegalArgumentException, if check fails.
      • getResettableValues

        public abstract java.util.Map getResettableValues()
        Returns all resetable key/value pairs already set in this condition or in one of its subconditions.
        Returns:
        Map A map containing all resettable key/value pairs.
      • setResettableValue

        public abstract void setResettableValue​(java.lang.String key,
                                                java.lang.Object value)
        Resets the value defined by given key.
        Parameters:
        key - original key for value parameter
        value - a new Value
        Throws:
        java.lang.IllegalArgumentException - , if given value is incompatible to original condition.
      • getOperator

        public Operator getOperator()
        returns Operator for this GenericCondition
        Returns:
        Operator instance
      • setOperator

        public void setOperator​(Operator operator)
        sets Operator for this GenericCondition
        Parameters:
        operator -
      • equals

        public static GenericCondition equals​(java.lang.String fieldQualifier,
                                              java.lang.Object value)
        Creates a EQUAL search condition upon a default type field.
        Parameters:
        fieldQualifier - the field qualifier within the default type of the enclosing query
      • notEquals

        public static GenericCondition notEquals​(java.lang.String fieldQualifier,
                                                 java.lang.Object value)
        Creates a UNEQUAL search condition upon a default type field.
        Parameters:
        fieldQualifier - the field qualifier within the default type of the enclosing query
      • createGreaterCondition

        public static GenericCondition createGreaterCondition​(GenericSearchField field,
                                                              java.lang.Object value)
        Creates a unlocalized GREATER search condition.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createGreaterOrEqualCondition

        public static GenericCondition createGreaterOrEqualCondition​(GenericSearchField field,
                                                                     java.lang.Object value)
        Creates a unlocalized GREATER_OR_EQUAL search condition.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createLessCondition

        public static GenericCondition createLessCondition​(GenericSearchField field,
                                                           java.lang.Object value)
        Creates a unlocalized LESS search condition.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createLessOrEqualCondition

        public static GenericCondition createLessOrEqualCondition​(GenericSearchField field,
                                                                  java.lang.Object value)
        Creates a unlocalized LESS_OR_EQUAL search condition.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createLikeCondition

        public static GenericCondition createLikeCondition​(GenericSearchField field,
                                                           java.lang.Object value)
        Creates a LIKE search condition in case insensitive mode.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • like

        public static GenericCondition like​(java.lang.String fieldQualifier,
                                            java.lang.Object value)
      • createNotLikeCondition

        public static GenericCondition createNotLikeCondition​(GenericSearchField field,
                                                              java.lang.Object value)
        Creates a NOT_LIKE search condition in case insensitive mode.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • notLike

        public static GenericCondition notLike​(java.lang.String fieldQualifier,
                                               java.lang.Object value)
      • createContainsCondition

        public static GenericCondition createContainsCondition​(GenericSearchField field,
                                                               java.lang.Object value)
        Creates a CONTAINS search condition in case insensitive mode.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createStartsWithCondition

        public static GenericCondition createStartsWithCondition​(GenericSearchField field,
                                                                 java.lang.Object value)
        Creates a STARTS_WITH search condition in case insensitive mode.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createEndsWithCondition

        public static GenericCondition createEndsWithCondition​(GenericSearchField field,
                                                               java.lang.Object value)
        Creates a ENDS_WITH search condition in case insensitive mode.
        Parameters:
        field -
        value -
        Returns:
        the new GenericCondition
      • createIsNotNullCondition

        public static GenericCondition createIsNotNullCondition​(GenericSearchField field)
        Creates a IS_NOT_NULL search condition.
        Parameters:
        field -
        Returns:
        the new GenericCondition
      • createIsNullCondition

        public static GenericCondition createIsNullCondition​(GenericSearchField field)
        Creates a IS_NULL search condition.
        Parameters:
        field -
        Returns:
        the new GenericCondition
      • createConditionForValueComparison

        public static GenericCondition createConditionForValueComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         java.lang.Object value)
        factory method for creating value conditions.

        (e.g. TABLE.FIELD1 = value1)

        Parameters:
        field - - must not be null
        operator - - permitted operators are EQUAL,UNEQUAL,LIKE,NOT_LIKE,STARTS_WITH,CONTAINS,GREATER,LESS,GREATER_OR_EQUAL,LESS_OR_EQUAL
        value - - must not be null or an empty collection
        Returns:
        GenericCondition
      • getComparison

        public static GenericCondition getComparison​(GenericSearchField field,
                                                     Operator operator,
                                                     java.lang.Object value)
        Creates a value comparison condition for a specified field.
        Parameters:
        field - the field to compare the value to
        operator - the comparison operator
        value - the value to compare to
        Returns:
        the condition object
      • getComparison

        public static GenericCondition getComparison​(java.lang.String fieldQualifier,
                                                     Operator operator,
                                                     java.lang.Object value)
        Creates a value comparison condition for a field of the initial type of the enclosing query.
        Parameters:
        fieldQualifier - the field qualifier within the initial type of the enclosing query
        operator - the comparison operator
        value - the value to compare to
        Returns:
        the condition object
      • createConditionForValueComparison

        public static GenericCondition createConditionForValueComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         java.lang.Object value,
                                                                         java.lang.String valueQualifier)
        factory method for creating value conditions.

        (e.g. TABLE.FIELD1 = value1)

        Parameters:
        field - - must not be null
        operator - - permitted operators are EQUAL,UNEQUAL,LIKE,NOT_LIKE,STARTS_WITH,CONTAINS,GREATER,LESS,GREATER_OR_EQUAL,LESS_OR_EQUAL
        value - - must not be null or an empty collection
        valueQualifier - if set the corresponding value may be reset later
        Returns:
        GenericCondition
      • createConditionForValueComparison

        public static GenericCondition createConditionForValueComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         java.lang.Object value,
                                                                         boolean caseInsensitive)
        factory method for creating value conditions.

        (e.g. TABLE.FIELD1 = value1)

        Parameters:
        field - must not be null
        operator - permitted operators are EQUAL,UNEQUAL,LIKE,NOT_LIKE,STARTS_WITH,CONTAINS,GREATER,LESS,GREATER_OR_EQUAL,LESS_OR_EQUAL
        value - must not be null or an empty collection
        caseInsensitive - indicates whether field/value will be compared case insensitively
        Returns:
        GenericCondition
      • createConditionForValueComparison

        public static GenericCondition createConditionForValueComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         java.lang.Object value,
                                                                         java.lang.String valueQualifier,
                                                                         boolean caseInsensitive)
        factory method for creating value conditions.

        (e.g. TABLE.FIELD1 = value1)

        Parameters:
        field - must not be null
        operator - permitted operators are EQUAL,UNEQUAL,LIKE,NOT_LIKE,STARTS_WITH,CONTAINS,GREATER,LESS,GREATER_OR_EQUAL,LESS_OR_EQUAL
        value - must not be null or an empty collection
        valueQualifier - if set the corresponding value may be reset later
        caseInsensitive - indicates whether field/value will be compared ignoring case
        Returns:
        GenericCondition
      • createConditionForLiteralComparison

        public static GenericCondition createConditionForLiteralComparison​(GenericSearchField field,
                                                                           Operator operator)
        factory method for creating literal conditions.

        (e.g. TABLE.FIELD1 IS NULL )

        Parameters:
        field - must not be null
        operator - permitted operators are IS_NULL, IS_NOT_NULL, EMPTY
        Returns:
        GenericCondition
      • createConditionForFieldComparison

        public static GenericCondition createConditionForFieldComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         GenericSearchField comparisonField)
        factory method for creating field conditions.

        (e.g. TABLE.FIELD1 = TABLE2.FIELD4 )

        Parameters:
        field - must not be null
        operator - permitted operators are IS_NULL, IS_NOT_NULL, EMPTY
        comparisonField - must not be null
        Returns:
        GenericCondition
      • createConditionForFieldComparison

        public static GenericCondition createConditionForFieldComparison​(GenericSearchField field,
                                                                         Operator operator,
                                                                         GenericSearchField comparisonField,
                                                                         boolean caseInsensitive)
        factory method for creating field conditions.

        (e.g. TABLE.FIELD1 = TABLE2.FIELD4 )

        Parameters:
        field - must not be null
        operator - permitted operators are IS_NULL, IS_NOT_NULL, EMPTY
        comparisonField - must not be null
        caseInsensitive - indicates whether field/value will be converted compared ignoring case
        Returns:
        GenericCondition
      • createJoinCondition

        public static GenericCondition createJoinCondition​(GenericSearchField field,
                                                           GenericSearchField joinedField)
        factory method for creating join conditions (with EQUAL)
        Parameters:
        field - must not be null
        joinedField - must not be null
        Returns:
        GenericCondition
      • createSubQueryCondition

        public static GenericCondition createSubQueryCondition​(GenericSearchField field,
                                                               Operator operator,
                                                               GenericQuery query)
        factory method for subquery condition
        Parameters:
        field - must not be null
        operator - permitted operators are IN, NOT_IN, EXISTS, NOT_EXISTS
        query - must not be null
        Returns:
        GenericCondition
      • createConditionList

        public static GenericConditionList createConditionList​(java.util.Collection<GenericCondition> conditions,
                                                               Operator operator)
        factory method for creating a conditionsList with a list of GenericConditions
        Parameters:
        conditions - members must be instances of GenericCondition
        operator - permitted operators are AND, OR
        Returns:
        GenericCondition
      • createConditionList

        public static GenericConditionList createConditionList​(GenericCondition condition)
        Factory method for creating a conditionsList with a single GenericConditions.
        Parameters:
        condition -
        Returns:
        the GenericConditionList
      • notIn

        public static GenericCondition notIn​(GenericSearchField genericSearchField,
                                             java.util.Collection<?> value)
        Creates a NOT IN search condition upon a specified field.
      • isTranslatableToPolyglotDialect

        public boolean isTranslatableToPolyglotDialect()