On 09-12-2020 09:47, Roar Brænden wrote:
Hi,
I have started to work on a new library gt-http that tries to collect
all usage of HTTP clients within Geotools. For the moment there are two
client implementations. SimpleHttpClient in gt-main and
MultithreadedHttpClient in gt-wms and gt-wfs-ng. You see there are
actually three, but the last two are almost identical.
MultithreadedHttpClient have the advantage that it uses a connection
pool favoring connections to the same host. I see the advantage in using
this for all the listed projects. The disadvantage is that you would
have a new dependency on the external library commons-httpclient.
In the near future this dependency will vanish when Geotools is ready
for JDK 11, and we could use the new HTTP client inside JDK. Before
going that direction, it would be great to have one place for all HTTP
clients.
If you really think it's horrible to include this dependency, I could
turn it into a plugin.
Any opinions?
At the risk of this being out of scope; the commons-httpclient version 3
.x that is in use by GeoTools is and has been EOL for quite a while.
upgrades from 3.x to 4.x or 5.x are non trivial because the API is quite
different if I recall correctly.
So I'm ambivalent with respect to further reliance on an EOL dependency;
on the one hand the imapct can be quite substantial if something shows
up awry in that lib (this is ofcourse already a risk), on the otherhand
you're centralizing in one place, so that could make upgrading an easier
task.
-M
_______________________________________________
GeoTools-Devel mailing list
GeoTools-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel