public class PCClassFileTransformer extends Object implements ClassFileTransformer
PersistenceCapable interface at runtime.| Modifier and Type | Class and Description |
|---|---|
static class |
PCClassFileTransformer.Reentrant |
| Constructor and Description |
|---|
PCClassFileTransformer(MetaDataRepository repos,
Options opts,
ClassLoader loader)
Constructor.
|
PCClassFileTransformer(MetaDataRepository repos,
PCEnhancer.Flags flags,
ClassLoader tmpLoader,
boolean devscan)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
static PCClassFileTransformer |
newInstance(MetaDataRepository repos,
Options parseProperties,
ClassLoader tmpLoader) |
byte[] |
transform(ClassLoader loader,
String className,
Class redef,
ProtectionDomain domain,
byte[] bytes) |
protected byte[] |
transform0(String className,
Class redef,
byte[] bytes)
We have to split the transform method into two methods to avoid
ClassCircularityError when executing method using pure-JIT JVMs
such as JRockit.
|
public PCClassFileTransformer(MetaDataRepository repos, Options opts, ClassLoader loader)
repos - metadata repository to use internallyopts - enhancer configuration optionsloader - temporary class loader for loading intermediate classespublic PCClassFileTransformer(MetaDataRepository repos, PCEnhancer.Flags flags, ClassLoader tmpLoader, boolean devscan)
repos - metadata repository to use internallyflags - enhancer configurationtmpLoader - temporary class loader for loading intermediate classesdevscan - whether to scan the dev classpath for persistent types
if none are configuredpublic static PCClassFileTransformer newInstance(MetaDataRepository repos, Options parseProperties, ClassLoader tmpLoader)
public byte[] transform(ClassLoader loader, String className, Class redef, ProtectionDomain domain, byte[] bytes) throws IllegalClassFormatException
transform in interface ClassFileTransformerIllegalClassFormatExceptionprotected byte[] transform0(String className, Class redef, byte[] bytes) throws IllegalClassFormatException
IllegalClassFormatExceptionCopyright © 2006–2022 Apache Software Foundation. All rights reserved.