public class PersistenceWeaver
extends java.lang.Object
implements javax.persistence.spi.ClassTransformer
Constructor and Description |
---|
PersistenceWeaver(Session session,
java.util.Map classDetailsMap)
INTERNAL:
Creates an instance of dynamic byte code weaver.
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
INTERNAL:
Allow the weaver to be clear to release its referenced memory.
|
java.util.Map |
getClassDetailsMap()
INTERNAL:
Get Class name in JVM '/' format to
ClassDetails map. |
byte[] |
transform(java.lang.ClassLoader loader,
java.lang.String className,
java.lang.Class classBeingRedefined,
java.security.ProtectionDomain protectionDomain,
byte[] classfileBuffer)
INTERNAL:
Perform dynamic byte code weaving of class.
|
public PersistenceWeaver(Session session, java.util.Map classDetailsMap)
session
- EclipseLink session.classDetailsMap
- Class name to ClassDetails
map.public void clear()
public java.util.Map getClassDetailsMap()
ClassDetails
map.ClassDetails
map.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
transform
in interface javax.persistence.spi.ClassTransformer
loader
- The defining loader of the class to be transformed, may be null
if the bootstrap loader.className
- The name of the class in the internal form of fully qualified class and interface names.classBeingRedefined
- If this is a redefine, the class being redefined, otherwise null
.protectionDomain
- The protection domain of the class being defined or redefined.classfileBuffer
- The input byte buffer in class file format (must not be modified).null
if no transform is performedjava.lang.instrument.IllegalClassFormatException
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference