org.codehaus.aspectwerkz.hook.impl
Class ClassLoaderPreProcessorImpl
java.lang.Object
org.codehaus.aspectwerkz.hook.impl.ClassLoaderPreProcessorImpl
- All Implemented Interfaces:
- ClassLoaderPreProcessor
public class ClassLoaderPreProcessorImpl
- extends Object
- implements ClassLoaderPreProcessor
Instruments the java.lang.ClassLoader to plug in the Class PreProcessor mechanism using ASM.
We are using a
lazy initialization of the class preprocessor to allow all class pre processor logic to be in system classpath and
not in bootclasspath. This implementation should support IBM custom JRE
- Author:
- Chris Nokleberg, Alexandre Vasseur
Method Summary |
static void |
main(String[] args)
|
byte[] |
preProcess(byte[] classLoaderBytecode)
Patch caller side of defineClass0
byte[] weaved = ..hook.impl.ClassPreProcessorHelper.defineClass0Pre(this, args..);
klass = defineClass0(name, weaved, 0, weaved.length, protectionDomain); |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ClassLoaderPreProcessorImpl
public ClassLoaderPreProcessorImpl()
preProcess
public byte[] preProcess(byte[] classLoaderBytecode)
- Patch caller side of defineClass0
byte[] weaved = ..hook.impl.ClassPreProcessorHelper.defineClass0Pre(this, args..);
klass = defineClass0(name, weaved, 0, weaved.length, protectionDomain);
- Specified by:
preProcess
in interface ClassLoaderPreProcessor
- Parameters:
classLoaderBytecode
-
- Returns:
main
public static void main(String[] args)
throws Exception
- Throws:
Exception
Copyright © 2002-2005 Jonas Bonér, Alexandre Vasseur. All Rights Reserved.