Class NestedFilterToSQL

  • All Implemented Interfaces:
    ExpressionVisitor, FilterVisitor

    public class NestedFilterToSQL
    extends FilterToSQL
    FilterToSQL decorator capable of encoding filters on nested attributes.

    Currently, the filters that can be translated to SQL are:

    • BBOX
    • Contains
    • Touches
    • Intersects
    • Overlaps
    • Within
    • Crosses
    • Disjoint
    • Equals
    • Beyond
    • DWithin
    • PropertyIsEqualTo
    • PropertyIsNotEqualTo
    • PropertyIsLessThan
    • PropertyIsLessThanOrEqualTo
    • PropertyIsGreaterThan
    • PropertyIsGreaterThanOrEqualTo
    • PropertyIsLike
    • PropertyIsNull
    • PropertyIsBetween

    Note that, in order to be successfully encoded, the filter must not involve more than one nested attribute (i.e. comparing nested attributes is not supported), nor attributes that are chained via polymorphic mappings.

    If the visited filter does not involve nested attributes, its encoding is delegated to the wrapped FilterToSQL instance.

    Author:
    Mauro Bartolomeoli, GeoSolutions, Stefano Costa, GeoSolutions