Class DefaultOperators

java.lang.Object
com.isomorphic.criteria.DefaultOperators

public class DefaultOperators extends Object
Helper class for accessing operators that needs for working with Criteria. Also it contains set of methods for values check.

You can use any operator directly like DefaultOperators.Equals or you can get all of them using getDefaultOperatorMap() method.

  • Field Details

    • Equals

      public static OperatorBase Equals
      Exactly equal to.
    • NotEqual

      public static OperatorBase NotEqual
      Not equal to.
    • IEquals

      public static OperatorBase IEquals
      exactly equal to, if case is disregarded.
    • INotEqual

      public static OperatorBase INotEqual
      Not equal to, if case is disregarded.
    • GreaterThan

      public static OperatorBase GreaterThan
      Greater than.
    • LessThan

      public static OperatorBase LessThan
      Less than.
    • GreaterOrEqual

      public static OperatorBase GreaterOrEqual
      Greater than or equal to.
    • LessOrEqual

      public static OperatorBase LessOrEqual
      Less than or equal to.
    • Between

      public static OperatorBase Between
      Shortcut for greaterThan + lessThan + and.
    • IBetween

      public static OperatorBase IBetween
      Shortcut for greaterThan + lessThan + and (case insensitive)
    • BetweenInclusive

      public static OperatorBase BetweenInclusive
      Shortcut for greaterOrEqual + lessOrEqual + and.
    • IBetweenInclusive

      public static OperatorBase IBetweenInclusive
      Shortcut for greaterOrEqual + lessOrEqual + and (case insensitive)
    • IContains

      public static OperatorBase IContains
      Contains as sub-string (case insensitive).
    • IStartsWith

      public static OperatorBase IStartsWith
      Starts with (case insensitive).
    • IEndsWith

      public static OperatorBase IEndsWith
      Ends with (case insensitive).
    • Contains

      public static OperatorBase Contains
      Contains as sub-string (match case).
    • StartsWith

      public static OperatorBase StartsWith
      Starts with (match case).
    • EndsWith

      public static OperatorBase EndsWith
      Ends with (match case).
    • INotContains

      public static OperatorBase INotContains
      Does not contain as sub-string (case insensitive).
    • INotStartsWith

      public static OperatorBase INotStartsWith
      Does not start with (case insensitive).
    • INotEndsWith

      public static OperatorBase INotEndsWith
      Does not end with (case insensitive).
    • NotContains

      public static OperatorBase NotContains
      Does not contain as sub-string (match case).
    • NotStartsWith

      public static OperatorBase NotStartsWith
      Does not start with (match case).
    • NotEndsWith

      public static OperatorBase NotEndsWith
      Does not end with (match case).
    • IsBlank

      public static OperatorBase IsBlank
      Value is blank.
    • NotBlank

      public static OperatorBase NotBlank
      Value is non-blank.
    • IsNull

      public static OperatorBase IsNull
      Value is null.
    • NotNull

      public static OperatorBase NotNull
      Value is non-null.
    • Regexp

      public static OperatorBase Regexp
      Regular expression match.
    • Iregexp

      public static OperatorBase Iregexp
      Regular expression match (case insensitive).
    • StartsWithPattern

      public static OperatorBase StartsWithPattern
      Glob expression start match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • IStartsWithPattern

      public static OperatorBase IStartsWithPattern
      Glob expression start match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • EndsWithPattern

      public static OperatorBase EndsWithPattern
      Glob expression ends match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • IEndsWithPattern

      public static OperatorBase IEndsWithPattern
      Glob expression ends match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • MatchesPattern

      public static OperatorBase MatchesPattern
      Glob expression match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • IMatchesPattern

      public static OperatorBase IMatchesPattern
      Glob expression match (case insensitive). Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • ContainsPattern

      public static OperatorBase ContainsPattern
      Glob expression match. Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • IContainsPattern

      public static OperatorBase IContainsPattern
      Glob expression match (case insensitive). Multi wildcard character allowed is '*' Single wildcard characters allowed are '%' and '?'
    • InSet

      public static OperatorBase InSet
      Value is in a set of values.
    • NotInSet

      public static OperatorBase NotInSet
      Value is not in a set of values.
    • EqualsField

      public static OperatorBase EqualsField
      Matches another field (specify fieldName as criterion.value).
    • IEqualsField

      public static OperatorBase IEqualsField
      Matches another field ignoring case (specify fieldName as criterion.value). This relies on the field values being strings.
    • NotEqualField

      public static OperatorBase NotEqualField
      Does not match another field (specify fieldName as criterion.value).
    • INotEqualField

      public static OperatorBase INotEqualField
      Does not match another field ignoring case (specify fieldName as criterion.value). This relies on the field values being strings.
    • And

      public static OperatorBase And
      All subcriteria (criterion.criteria) are true.
    • Not

      public static OperatorBase Not
      All subcriteria (criterion.criteria) are false.
    • Or

      public static OperatorBase Or
      At least one subcriteria (criterion.criteria) is true.
    • GreaterThanField

      public static OperatorBase GreaterThanField
      Greater than another field (specify fieldName as criterion.value).
    • LessThanField

      public static OperatorBase LessThanField
      Less than another field (specify fieldName as criterion.value).
    • GreaterOrEqualField

      public static OperatorBase GreaterOrEqualField
      Greater than or equal to another field (specify fieldName as criterion.value).
    • LessOrEqualField

      public static OperatorBase LessOrEqualField
      Less than or equal to another field (specify fieldName as criterion.value).
    • ContainsField

      public static OperatorBase ContainsField
      Contains as sub-string (match case) another field value (specify fieldName as criterion.value).
    • IContainsField

      public static OperatorBase IContainsField
      Contains as sub-string another field value (specify fieldName as criterion.value).
    • NotContainsField

      public static OperatorBase NotContainsField
      Does not contain a sub-string (match case) of another field value (specify fieldName as criterion.value).
    • INotContainsField

      public static OperatorBase INotContainsField
      Does not contain a sub-string of another field value (specify fieldName as criterion.value).
    • StartsWithField

      public static OperatorBase StartsWithField
      Starts with (match case) another field value (specify fieldName as criterion.value)
    • IStartsWithField

      public static OperatorBase IStartsWithField
      Starts with another field value (specify fieldName as criterion.value)
    • NotStartsWithField

      public static OperatorBase NotStartsWithField
      Does not start with (match case) another field value (specify fieldName as criterion.value)
    • INotStartsWithField

      public static OperatorBase INotStartsWithField
      Does not start with another field value (specify fieldName as criterion.value)
    • EndsWithField

      public static OperatorBase EndsWithField
      Ends with (match case) another field value (specify fieldName as criterion.value).
    • IEndsWithField

      public static OperatorBase IEndsWithField
      Ends with another field value (specify fieldName as criterion.value).
    • NotEndsWithField

      public static OperatorBase NotEndsWithField
      Does not end with (match case) another field value (specify fieldName as criterion.value).
    • INotEndsWithField

      public static OperatorBase INotEndsWithField
      Does not end with another field value (specify fieldName as criterion.value).
  • Method Details

    • isEqualToConfiguredValue

      public static boolean isEqualToConfiguredValue(Object value, String operand) throws Exception
      Returns true if argument "value" (presumed to come from a DataSource) is equal to the value represented by argument "operand" (a String, presumed to come from a .ds.xml file). Otherwise returns false.

      This is meant to be a wrapper class around isEqual(), handling the most common cases of type conversion and data conditioning.

      Throws:
      Exception
    • isEqual

      public static boolean isEqual(Object value, Object operand) throws Exception
      Compare two objects in a style suitable for Advanced Criteria operators. This should follow the same equality semantics as implemented in DataSource.js. It should also generally follow equality semantics for SQL.
      Throws:
      Exception
    • rangeCheckToConfiguredValues

      public static boolean rangeCheckToConfiguredValues(Object value, String lower, String upper, boolean inclusive, boolean caseInsensitive) throws Exception
      Evaluates: "lower (< <=) value (< <=) upper", where value is an object (presumably from a record), and lower and upper are Strings, presumably parsed from a .ds.xml file, which are converted to the type of value prior to comparison.
      Throws:
      Exception
    • rangeCheck

      public static boolean rangeCheck(Object value, Object lower, Object upper, boolean inclusive, boolean caseInsensitive) throws Exception
      Evaluates: "lower (< <=) value (< <=) upper", where lower, value, and upper are presumed to be objects of (nearly) the same type.
      Throws:
      Exception
    • isMatchingPattern

      public static boolean isMatchingPattern(String value, String matchesPattern, boolean ignoreCase) throws Exception
      Checks to see if the value matches the pattern described allowing for multi wildcard character '*' and single wildcard characters '%' and '?'
      Throws:
      Exception
    • isStartsWithPattern

      public static boolean isStartsWithPattern(String value, String matchesPattern, boolean ignoreCase) throws Exception
      Checks to see if the value starts with the pattern described allowing for multi wildcard character '*' and single wildcard characters '%' and '?'
      Throws:
      Exception
    • isEndsWithPattern

      public static boolean isEndsWithPattern(String value, String matchesPattern, boolean ignoreCase) throws Exception
      Checks to see if the value ends with the pattern described allowing for multi wildcard character '*' and single wildcard characters '%' and '?'
      Throws:
      Exception
    • getDefaultOperatorMap

      public static Map<String,Operator> getDefaultOperatorMap()
      Retrieving the Map containing all default operators.
      Returns:
      all default operators as map(id->operator).