public class GlassFishLoadTimeWeaver extends Object implements LoadTimeWeaver
LoadTimeWeaver
implementation for GlassFish's
InstrumentableClassLoader
.
As of Spring 3.0, GlassFish V3 is supported as well.
Constructor and Description |
---|
GlassFishLoadTimeWeaver()
Creates a new instance of the
GlassFishLoadTimeWeaver class
using the default ClassLoader . |
GlassFishLoadTimeWeaver(ClassLoader classLoader)
Creates a new instance of the
GlassFishLoadTimeWeaver class. |
Modifier and Type | Method and Description |
---|---|
void |
addTransformer(ClassFileTransformer transformer)
Add a
ClassFileTransformer to be applied by this
LoadTimeWeaver . |
ClassLoader |
getInstrumentableClassLoader()
Return a
ClassLoader that supports instrumentation
through AspectJ-style load-time weaving based on user-defined
ClassFileTransformers . |
ClassLoader |
getThrowawayClassLoader()
Return a throwaway
ClassLoader , enabling classes to be
loaded and inspected without affecting the parent ClassLoader . |
public GlassFishLoadTimeWeaver()
GlassFishLoadTimeWeaver
class
using the default ClassLoader
.GlassFishLoadTimeWeaver(ClassLoader)
public GlassFishLoadTimeWeaver(ClassLoader classLoader)
GlassFishLoadTimeWeaver
class.classLoader
- the specific ClassLoader
to use; must not be null
IllegalArgumentException
- if the supplied classLoader
is null
;
or if the supplied classLoader
is not an
InstrumentableClassLoader
public void addTransformer(ClassFileTransformer transformer)
LoadTimeWeaver
ClassFileTransformer
to be applied by this
LoadTimeWeaver
.addTransformer
in interface LoadTimeWeaver
transformer
- the ClassFileTransformer
to addpublic ClassLoader getInstrumentableClassLoader()
LoadTimeWeaver
ClassLoader
that supports instrumentation
through AspectJ-style load-time weaving based on user-defined
ClassFileTransformers
.
May be the current ClassLoader
, or a ClassLoader
created by this LoadTimeWeaver
instance.
getInstrumentableClassLoader
in interface LoadTimeWeaver
ClassLoader
which will expose
instrumented classes according to the registered transformerspublic ClassLoader getThrowawayClassLoader()
LoadTimeWeaver
ClassLoader
, enabling classes to be
loaded and inspected without affecting the parent ClassLoader
.
Should not return the same instance of the ClassLoader
returned from an invocation of LoadTimeWeaver.getInstrumentableClassLoader()
.
getThrowawayClassLoader
in interface LoadTimeWeaver
ClassLoader
; should return
a new instance for each call, with no existing state