|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.context.weaving.DefaultContextLoadTimeWeaver
public class DefaultContextLoadTimeWeaver
Default LoadTimeWeaver bean for use in an application context,
decorating an automatically detected internal LoadTimeWeaver.
Typically registered for the default bean name
"loadTimeWeaver"; the most convenient way to achieve this is
Spring's <context:load-time-weaver> XML tag.
This class implements a runtime environment check for obtaining the
appropriate weaver implementation: As of Spring 2.5, it detects Sun's
GlassFish, Oracle's OC4J, BEA's WebLogic 10,
Spring's VM agent and any
ClassLoader supported by Spring's ReflectiveLoadTimeWeaver
(for example the
TomcatInstrumentableClassLoader).
ConfigurableApplicationContext.LOAD_TIME_WEAVER_BEAN_NAME| Field Summary | |
|---|---|
protected Log |
logger
|
| Constructor Summary | |
|---|---|
DefaultContextLoadTimeWeaver()
|
|
| Method Summary | |
|---|---|
void |
addTransformer(ClassFileTransformer transformer)
Add a ClassFileTransformer to be applied by this
LoadTimeWeaver. |
protected LoadTimeWeaver |
createServerSpecificLoadTimeWeaver(ClassLoader classLoader)
|
void |
destroy()
Invoked by a BeanFactory on destruction of a singleton. |
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. |
void |
setBeanClassLoader(ClassLoader classLoader)
Callback that supplies the bean class loader to
a bean instance. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final Log logger
| Constructor Detail |
|---|
public DefaultContextLoadTimeWeaver()
| Method Detail |
|---|
public void setBeanClassLoader(ClassLoader classLoader)
BeanClassLoaderAwareclass loader to
a bean instance.
Invoked after the population of normal bean properties but
before an initialization callback such as
InitializingBean's
InitializingBean.afterPropertiesSet()
method or a custom init-method.
setBeanClassLoader in interface BeanClassLoaderAwareclassLoader - the owning class loader; may be null in
which case a default ClassLoader must be used, for example
the ClassLoader obtained via
ClassUtils.getDefaultClassLoader()protected LoadTimeWeaver createServerSpecificLoadTimeWeaver(ClassLoader classLoader)
public void destroy()
DisposableBean
destroy in interface DisposableBeanpublic void addTransformer(ClassFileTransformer transformer)
LoadTimeWeaverClassFileTransformer to be applied by this
LoadTimeWeaver.
addTransformer in interface LoadTimeWeavertransformer - the ClassFileTransformer to addpublic ClassLoader getInstrumentableClassLoader()
LoadTimeWeaverClassLoader 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 LoadTimeWeaverClassLoader which will expose
instrumented classes according to the registered transformerspublic ClassLoader getThrowawayClassLoader()
LoadTimeWeaverClassLoader, 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 LoadTimeWeaverClassLoader; should return
a new instance for each call, with no existing state
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||