Package org.apache.openjpa.enhance
Class ClassRedefiner
- java.lang.Object
 - 
- org.apache.openjpa.enhance.ClassRedefiner
 
 
- 
public class ClassRedefiner extends Object
Redefines the method bodies of existing classes. Supports Java 5 VMs that have a java agent installed on the command line as well as newer VMs without any-javaagentflag.- Since:
 - 1.0.0
 
 
- 
- 
Constructor Summary
Constructors Constructor Description ClassRedefiner() 
- 
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static booleancanRedefineClasses(Log log)static voidredefineClasses(OpenJPAConfiguration conf, Map<Class<?>,byte[]> classes)For each element inclasses, this method will redefine all the element's methods such that field accesses are intercepted in-line. 
 - 
 
- 
- 
Method Detail
- 
redefineClasses
public static void redefineClasses(OpenJPAConfiguration conf, Map<Class<?>,byte[]> classes)
For each element inclasses, this method will redefine all the element's methods such that field accesses are intercepted in-line. IfcanRedefineClasses(Log)returnsfalse, this method is a no-op. 
- 
canRedefineClasses
public static boolean canRedefineClasses(Log log)
- Returns:
 - whether or not this VM has an instrumentation installed that
 permits redefinition of classes. This assumes that all the arguments
 will be modifiable classes according to
 
Instrumentation.isModifiableClass(java.lang.Class<?>), and only checks whether or not an instrumentation is available and if retransformation is possible. 
 
 - 
 
 -