Or I completely misunderstood your impl? :-)
I thought I was just showing your impl from the first post, but putting it in a factory method, I must have got it wrong if you don't understand it?
On the delegate loaders, you can't just modify the delegates returned by the policy (you probably dont want to, it would just be something else
to tidyup later), its not used after the classloader gets constructed,
you want to update the ClassLoaderInformation - this is the optimized view of the policy for runtime.
So you need a method (probably on ClassLoaderPolicy) like:
void addExtraDelegate(DelegateLoader dl);