Hi, today I fixed a bug in Oracle related to encoding Filter.INCLUDE/Filter.EXCLUDE. The bug was there, no excuse, but the filter that was going to be encoded was like:
INCLUDE AND INCLUDE AND geom bbox (...) which is kind of silly. One workaround for this would be to have datastores encoding filters into sql or ogc filter to simplify the filter thru a duplicating and simplifying visitor... but this sound a lot like an after the fact hack. Another solution would be to introduce a smarter builder for filters, but fact is, most of the code is using FilterFactory and it's simple enough that most people won't look for the builder even if there was one. Imho the simple, effective solution would be to change FilterFactory.and to return Filter intead of And, and the same goes for FilterFactory.or, and have the factory do the simplification during the build. For example, if Filter.and(...) was feeded a list of filters including Filter.EXCLUDE, the result would simply be Filter.EXCLUDE, as simple as that... This is an API breaking change, and a GeoApi change as well, but it would allow a clean a long term solution to this problem with a simple no-nonsense change. Opinions? Cheers Andrea ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Geotools-devel mailing list Geotools-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel