Ales Justin wrote:
And I have no idea how to hack around this dynamic loader to policy's delegates addition.
This would actually have to be done on CLInfo.
e.g.
ClassLoaderPolicy policy = getPolicy();
ClassLoaderInformation info = policy.getInformation(); // exposing this as protected in super, public in CLP
if (info != null)
info.addDelegate(loader); // new public method
Adding this hacks makes all previous wildcard tests pass. :-)
Don't expose the stuff from spi.base - its implementation detail.
Add proper helper methods to the stuff in spi.
Its easy to make things public or protected, but then you'll have people poking around and breaking things.
All you want to do is add a delegate at runtime, not expose the ugly guts of the classloader! :-)