On Tue, Jan 29, 2013 at 3:51 AM, Ben Caradoc-Davies <Ben.Caradoc-Davies@anonymised.com> wrote:
+1. Looks interesting and useful.
How are multiple callbacks ordered? In the order registered? (I am not familiar with the detailed behaviour of dispatcher callback.)
Yes, in the order of registration unless they implement the ExtensionPriority interface
Could this be used to implement things like clustering (depicting multiple close features with a single marker)?
Hum, yes, it could be used to do that, but we have rendering transformations already doing that.
However I can imagine cases in which a plugin literally swaps the origin layer under the WMS
feet for some reason, in which case this approach would make more sense, or force a different
style based on the user right.
Also, it could be used to implement certain optimization that are not possible in the rendering
chain itself, for example:
- when cross layer filtering is in use, notice that the two layers involved are both coming from
the same JDBC database and replace cross layer filtering with a native spatial join
- having soft information about the layer’s nature, know that a layer is “covering” its bbox,
and if so, remove all layers below it in the map content to speed up rendering
David’s suggestion to re-implement decorations (and by extension, global watermaking)
using this tool is also a fitting one, MapContent allows for user drawn layers, one of those
painting the decorations could be added into the MapContent in the callback, avoiding
the need to have decoration support spread around the code base (we have it in
at least two different places now).
Cheers
Andrea
–
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549
http://www.geo-solutions.it
http://twitter.com/geosolutions_it