Interface IPropertyFilter<T extends IProperty>

Type Parameters:
T - the property type to use

public interface IPropertyFilter<T extends IProperty>
A property filter can be used for filtering workflow objects by their properties. It is possible to create powerful filters by combining them to logical expression using the two and, the two or or the not() methods.

Example:
IPropertyFilter filterOne = ...;
IPropertyFilter filterTwo = ...;
IPropertyFilter filter = filterOne.and(filterTwo);

Use the Factory methods on IWorkflowContext to create filters.
Since:
19.07.2007
See Also:
API:
This is a public API.
  • Method Summary

    Modifier and Type
    Method
    Description
    and(IPropertyFilter<T> anotherFilterExpression)
    Returns a new filter that associates this filter with the given other filter with a logical and operation
    and(T property, RelationalOperator operator, Object value)
    Returns a new filter that associates this filter with the new filter created with given arguments with a logical and operation
    not()
    Returns a new filter that inverses this filter with a logical not operation
    or(IPropertyFilter<T> anotherFilterExpression)
    Returns a new filter that associates this filter with the given other filter with a logical or operation
    or(T property, RelationalOperator operator, Object value)
    Returns a new filter that associates this filter with the new filter created with the given arguments with a logical and operation
  • Method Details

    • and

      IPropertyFilter<T> and(IPropertyFilter<T> anotherFilterExpression)
      Returns a new filter that associates this filter with the given other filter with a logical and operation
      Parameters:
      anotherFilterExpression - the other filter expression
      Returns:
      new filter that logical ands this filter and the given other filter
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • or

      IPropertyFilter<T> or(IPropertyFilter<T> anotherFilterExpression)
      Returns a new filter that associates this filter with the given other filter with a logical or operation
      Parameters:
      anotherFilterExpression - the other filter expression
      Returns:
      new filter that logical ors this filter and the given other filter
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • and

      IPropertyFilter<T> and(T property, RelationalOperator operator, Object value)
      Returns a new filter that associates this filter with the new filter created with given arguments with a logical and operation
      Parameters:
      property - the property
      operator - the relational operator to use
      value - the value to use. Maybe null
      Returns:
      new filter that logical ands this filter and the given other filter
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • or

      IPropertyFilter<T> or(T property, RelationalOperator operator, Object value)
      Returns a new filter that associates this filter with the new filter created with the given arguments with a logical and operation
      Parameters:
      property - the property
      operator - the relational operator to use
      value - the value to use. Maybe null
      Returns:
      new filter that logical ands this filter and the given other filter
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.
    • not

      Returns a new filter that inverses this filter with a logical not operation
      Returns:
      new filter that logical inverses (not) this filter
      API:
      This public API is available in IvyScript and Java. It has the visibility ADVANCED.