org.jpox.enhancer
Class JPOXClassFileTransformer
java.lang.Object
org.jpox.enhancer.JPOXClassFileTransformer
- All Implemented Interfaces:
- java.lang.instrument.ClassFileTransformer
public class JPOXClassFileTransformer
- extends java.lang.Object
- implements java.lang.instrument.ClassFileTransformer
Entry Point (as per Java) for transforming classes at runtime.
Before loading classes, the JVM invokes the ClassFileTranformer to transform the class
- Version:
- $Revision: 1.1 $
|
Method Summary |
static void |
premain(java.lang.String agentArguments,
java.lang.instrument.Instrumentation instrumentation)
|
byte[] |
transform(java.lang.ClassLoader loader,
java.lang.String className,
java.lang.Class classBeingRedefined,
java.security.ProtectionDomain protectionDomain,
byte[] classfileBuffer)
Invoked when a class is being loaded or redefined. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
enhancer
protected Enhancer enhancer
arguments
protected java.lang.String arguments
JPOXClassFileTransformer
public JPOXClassFileTransformer()
JPOXClassFileTransformer
public JPOXClassFileTransformer(java.lang.String arguments)
premain
public static void premain(java.lang.String agentArguments,
java.lang.instrument.Instrumentation instrumentation)
transform
public byte[] transform(java.lang.ClassLoader loader,
java.lang.String className,
java.lang.Class classBeingRedefined,
java.security.ProtectionDomain protectionDomain,
byte[] classfileBuffer)
throws java.lang.instrument.IllegalClassFormatException
- Invoked when a class is being loaded or redefined. The implementation of
this method may transform the supplied class file and return a new
replacement class file.
- Specified by:
transform in interface java.lang.instrument.ClassFileTransformer
- Parameters:
loader - The defining loader of the class to be transformed, may be
null if the bootstrap loaderclassName - The name of the class in the internal form of fully
qualified class and interface namesclassBeingRedefined - If this is a redefine, the class being
redefined, otherwise nullprotectionDomain - The protection domain of the class being defined
or redefinedclassfileBuffer - The input byte buffer in class file format - must
not be modified
- Returns:
- A well-formed class file buffer (the result of the transform), or
null if no transform is performed
- Throws:
java.lang.instrument.IllegalClassFormatException - If the input does not represent a
well-formed class file
Copyright © -2008 . All Rights Reserved.