Hi, I was looking at splitting main into smaller bits to avoid some split package issues, ideally trying to to towards a gt-data (everything vector), gt-style (styling) and and almost empty gt-main to collect the residuals, with gt-main depending on the two above... and realized it's not possible.
The reason is mostly CommonFactoryFinder... the class is something many class depend on, and it depends in turn on geotools packages: import org.geotools.data.FeatureLockFactory; import org.geotools.data.FileDataStoreFactorySpi; import org.geotools.feature.FeatureCollections; import org.geotools.filter.FunctionFactory; import org.geotools.styling.StyleFactory; Long story short, if classes in those packages depend on CommonFactoryFinder, and CommonFactoryFinder depends on the factories in those packages, we're toast, there is no way to break main apart. The ways to solve it seem too heavy for an after-sprint change, but thinking out loud: - Make CommonFactoryFinder only return opengis factories... we'd likely miss methods by doing that - Resurrect the single factory finders, have GeoTools code rely on them, and leave CommonFactoryFinder for client usage - Move those factories in another package Aside, I'm solving the styling split package the other way around, merging back everything into main and moving a couple of renderer classes in another package. It's a small change, a dozen classes affected in GeoTools and a few in GeoServer. Cheers Andrea == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- *Con riferimento alla normativa sul trattamento dei dati personali (Reg. UE 2016/679 - Regolamento generale sulla protezione dei dati “GDPR”), si precisa che ogni circostanza inerente alla presente email (il suo contenuto, gli eventuali allegati, etc.) è un dato la cui conoscenza è riservata al/i solo/i destinatario/i indicati dallo scrivente. Se il messaggio Le è giunto per errore, è tenuta/o a cancellarlo, ogni altra operazione è illecita. Le sarei comunque grato se potesse darmene notizia. This email is intended only for the person or entity to which it is addressed and may contain information that is privileged, confidential or otherwise protected from disclosure. We remind that - as provided by European Regulation 2016/679 “GDPR” - copying, dissemination or use of this e-mail or the information herein by anyone other than the intended recipient is prohibited. If you have received this email by mistake, please notify us immediately by telephone or e-mail.*
_______________________________________________ GeoTools-Devel mailing list GeoTools-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel