I understand Jim, that was the approach taken by AbstractDataStore
previously, as a result the DataStores got really heavy, and the feature
source implementations were always delegating to them.

The general theme of ContentDataStore is that your implementation of
FeatureSource becomes the heart and sole of your implementation with all
the smarts, rather than duplicate (or delegate back to the parent
DataStore) we gather all the implementations at the FeatureSource level.

Marking this method final is a indeed trying to force your hand to do the
implementing in your subclass of ContentFeatureSource. I think a lot of the
caching is also defined there out of the box ... Have a look at some of the
logic around ContentState.getFeatureType(), your would need to be checking
this cache anyways (and thus accessing a ContentFeatureStore which holds
it).

Can we instead go over where creating a FeatureSource forced you to make
threads and connections, and see if we can put that off - implementing the
buildFeatureType() with the information you already have at hand.

--
Jody Garnett

On 27 October 2016 at 13:52, Jim Hughes <[email protected]> wrote:

> Hi all,
>
> In GeoMesa, we are using the ContentDataStore, etc abstract interfaces.
> In the case of ContentDataStore.getSchema functions, I'd like to suggest
> that getSchema(String typename) ought not be marked final.
>
> For the DataStore in question, sufficient metadata is available at the
> DataStore level, and instantiating a FeatureSource creates additional
> threads and connections (which in this case is very undesirable).
>
> Thoughts?
>
> Cheers,
>
> Jim
>
> https://github.com/geotools/geotools/blob/master/modules/lib
> rary/data/src/main/java/org/geotools/data/store/ContentDataStore.java#L342
>
>
> ------------------------------------------------------------
> ------------------
> The Command Line: Reinvented for Modern Developers
> Did the resurgence of CLI tooling catch you by surprise?
> Reconnect with the command line and become more productive.
> Learn the new .NET and ASP.NET CLI. Get your free copy!
> http://sdm.link/telerik
> _______________________________________________
> GeoTools-Devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/geotools-devel
>
------------------------------------------------------------------------------
The Command Line: Reinvented for Modern Developers
Did the resurgence of CLI tooling catch you by surprise?
Reconnect with the command line and become more productive. 
Learn the new .NET and ASP.NET CLI. Get your free copy!
http://sdm.link/telerik
_______________________________________________
GeoTools-Devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to