|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.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)
|
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)
BeanClassLoaderAware
class 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 BeanClassLoaderAware
classLoader
- 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 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
public 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
|
The Spring Framework | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |