| As noted in GEOT-4981the class NestedAttributeExpresionImpl is incompatible with the design of GeoTools; specifically the query language is fixed (because we have a fixed grammar of Filter 2.0, CQL and ECQL) defining what filters and expressions classes are available. There are two main ways to extend:
- Functions - adds additional processing options
- PropertyAccessors - adds additional property access options
NestedAttributeExpressionImpl is an attempt to override the default functionality of PropertyName; however this flexibility is already available (by implementing a PropertyAccessor above). The GeoTools codebase assume that PropertyName expressions can be copied as a data structure, NestedAttributeExpressionImpl breaks this assumption (resulting in patches like
GEOT-4981 Open ). We need to depend on the design of GeoTools as we will not be able to cover all the corner cases required by a custom implementation of PropertyName. |