Package jakarta.persistence.spi
Interface ClassTransformer
public interface ClassTransformer
A persistence provider supplies an instance of this 
 interface to the 
PersistenceUnitInfo.addTransformer(jakarta.persistence.spi.ClassTransformer)
 method. The supplied transformer instance will get 
 called to transform entity class files when they are 
 loaded or redefined. The transformation occurs before  
 the class is defined by the JVM.- Since:
 - 1.0
 
- 
Method Summary
Modifier and TypeMethodDescriptionbyte[]transform(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) Invoked when a class is being loaded or redefined. 
- 
Method Details
- 
transform
byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws TransformerException 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.- 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:
 TransformerException- if the input does not represent a well-formed class file
 
 -