Hello,

I would like every PMC opinion on this.

I'm working on a branch for style and I arrived at the Symbolizer level.


Martin raised this issue of GeoAPI when I started to work on the new 
style interfaces.
"Should we make Styles Immutable ?"

Here is the structure of the style interfaces :
Style > FeatureTypeStyles > Rules > Symbolizers > Parameters (to simplify)

What I propose is to make Symbolizer and underneath classes immutable.
Doing this will bring several advantages :
- Thread safe
- Less memory consumption (we reuse objects)
- Simplify code
- Enable more efficient Cache for renderers
- Events handling, no more fine grained changes

I have choosen the Symbolizer because it's the style element
that stores all portraying informations. If the symbolizer is immutable
it will enable better multithreading in renderers.


Andrea raised some concerns:
- Inconsistency : we only have half of the style classes immutable.

- Factories with too long methods : if we make symbolizer immutable we must
provide creation methods with all parameters.

Solution : add methods in the factory with less parameters. an exemple 
is provided
in the GO module class : org.geotools.styling2.SymbolizerBuilder.


regards

-- 
Johann Sorel

Company - Geomatys GIS Developer
Mail - [EMAIL PROTECTED]


-------------------------------------------------------------------------
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to