Comment #10 on issue 343 by mcculls: BytecodeGen uses system classloader  
when applying AOP to system types
http://code.google.com/p/google-guice/issues/detail?id=343

Originally we supported just two modes:

   <unset>/"true" - only use bridge classloaders where needed (and possible)
   "false" - never use bridge classloaders (pre-OSGi behaviour)

but I think it would be useful to support:

   "eager" - always use bridge classloaders wherever possible

This is different from the <unset> case because it will still try and use a  
bridge
classloader even if Guice and the class being proxied are in the same  
classloader.
This means that the proxy class can be eagerly unloaded even while the  
application
classloader is still active - without this mode you wouldn't be able to  
unload proxy
classes when proxying system types.

Now this is really a "nice-to-have", so if you think it will confuse people  
we can
simply drop it :) or we can change it to "false", "lazy", and "true" -  
with "lazy"
being the current default.

The other change is to support situations where we can't get the system  
classloader
(ie. the classloader equivalent to "null") like on the AppEngine, but we  
still want
to represent it as a non-null key in the map so we map it to a placeholder  
object.

Feel free to tidy up the patch while I write up a test for this change -  
you can
always attach the new patch to this issue in case you're finished before I  
am ;)

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"google-guice-dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-guice-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to