org.hibernate.bytecode
Class AbstractClassTransformerImpl
java.lang.Object
org.hibernate.bytecode.AbstractClassTransformerImpl
- ClassTransformer
public abstract class AbstractClassTransformerImpl
extends java.lang.Object
- Emmanuel Bernard
- Steve Ebersole
protected abstract byte[] | doTransform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer)
|
byte[] | transform(ClassLoader loader, String className, Class classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) - Invoked when a class is being loaded or redefined to add hooks for persistence bytecode manipulation
|
AbstractClassTransformerImpl
protected AbstractClassTransformerImpl(ClassFilter classFilter,
FieldFilter fieldFilter)
doTransform
protected abstract byte[] doTransform(ClassLoader loader,
String className,
Class classBeingRedefined,
ProtectionDomain protectionDomain,
byte[] classfileBuffer)
transform
public byte[] transform(ClassLoader loader,
String className,
Class classBeingRedefined,
ProtectionDomain protectionDomain,
byte[] classfileBuffer)
Invoked when a class is being loaded or redefined to add hooks for persistence bytecode manipulation
- transform in interface ClassTransformer
loader
- the defining class loaderof the class being transformed. It may be null if using bootstrap loaderclassBeingRedefined
- If an already loaded class is being redefined, then pass this as a parameterprotectionDomain
- ProtectionDomain of the class being (re)-definedclassfileBuffer
- The input byte buffer in class file format
- A well-formed class file that can be loaded