Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aether-users] NTLM support (was Versioning fun with Aether milestones)

Andreas Sewe wrote:

Unfortunately, HttpTransporterFactory is final (why?)

Oh that's a simple question: Subclassing that isn't supported. Whatever use cases folks might have for this, they are expected to present them to the Aether project so that we can figure out an approach that can be well supported. I have history with a project where pretty much every class is public and non-final and the uncontrolled (ab-)use of that made its evolution a PITA.

Now, all one would need to do with HttpTransporter is to sneak in a
single line [2]:

httpclient.getAuthSchemes().register("ntlm", new NTLMSchemeFactory());

Alas, aether-transport-http's HttpTransport is extremely difficult to
extend. Would it be possible to restructure HttpTransporter such that
one can supply a different(ly configured) HttpClient?

For similar reasons to the above, I have reservations towards exposing the HttpClient instance for full access by 3rd-parties. AFAICT, your immediate need could be fulfilled via a simple config property that provides the NTLM impl. This not needing any changes to API, should even be suitable for a 0.9.1 release.


Benjamin


Back to the top