Martin Desruisseaux ha scritto: > Martin Desruisseaux a écrit : >> If this proposal is accepted, I can declare two ReferencingFactoryFinder >> instances: DEFAULT and STRICT. Users would need to replace every calls to: > > More notes on the rational behind that. Use case: > > 1) A user ask for a factory using FactoryFinder.DEFAULT.getFooFactory(hints). > > 2) The FactoryFinder merge the user-specified hints with the global hints, > then create the Factory (if it was not already instantiated) using the > Factory(Hints) constructor. > > 3) The factory depends on some other factories. Before to ask FactoryFinder > again, it may apply some processing on the user hints, maybe *removing* > some user-specified hints - for example CRS codes specified as URN are > always "as the authority said" even if the users provided the "force > longitude first axis order" hint. > > 4) The factory invokes FactoryFinder.STRICT.getFooFactory(hints) for fetching > its dependency. We use STRICT, not DEFAULT, because: > > - We already have the user hints - we are inside a Factory(Hints) > constructor > invoked by FactoryFinder.DEFAULT and we are fetching dependencies. > > - We don't want global hints to be merged again. If we are fetching a URN > factory dependency, we really don't want the "force longitude first axis > order" to be merged to the hints - we just removed that hint in the > previous step! > > > So in conclusion: > > * Users would use FactoryFinder.DEFAULT > > * Factory(Hints) constructor that need to fetch dependencies would use > FactoryFinder.STRICT with the hints that they got (and eventually > filtered) in the constructor.
Sounds good to me Martin. 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://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace _______________________________________________ Geotools-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-devel
