public class CallReplacementTransformer
extends org.plumelib.bcelutil.InstructionListUtils
implements java.lang.instrument.ClassFileTransformer
CallReplacementTransformer replaces each call to method m1 by a call to method m2. It
is used by the ReplaceCallAgent.ReplaceCallAgent| Modifier and Type | Method and Description |
|---|---|
byte[] |
transform(@Nullable java.lang.ClassLoader loader,
java.lang.String className,
@Nullable java.lang.Class<?> classBeingRedefined,
java.security.ProtectionDomain protectionDomain,
byte[] classfileBuffer) |
append_inst, build_il, calculateLiveLocalTypes, calculateLiveStackTypes, delete_instructions, insertAtMethodStart, insertBeforeHandle, replaceInstructionsaddNewParameter, addString, adjust_code_for_locals_change, bcelCalcStackTypes, buildUninitializedNewMap, create_local_from_live_range, create_method_scope_local, createNewStackMapAttribute, findStackMapEqual, findStackMapIndexAfter, findStackMapIndexBefore, fixLocalVariableTable, gen_locals_from_byte_codes, gen_locals_from_byte_codes, gen_locals, generate_Type_from_StackMapType, generateStackMapTypeFromType, get_attribute_name, get_local_variable_type_table_attribute, getSize, getStackMapTable_attribute, is_local_variable_type_table, isStackMapTable, modifyStackMapsForSwitches, printStackMapTable, remove_local_variable_type_table, set_method_stackTypes, setCurrentStackMapTable, typeToClassGetName, update_full_frameStackMap_entries, updateStackMapOffset, updateUninitializedNewOffsetspublic byte[] transform(@Nullable java.lang.ClassLoader loader,
java.lang.String className,
@Nullable java.lang.Class<?> classBeingRedefined,
java.security.ProtectionDomain protectionDomain,
byte[] classfileBuffer)
throws java.lang.instrument.IllegalClassFormatException
Transforms the given class class by replacing calls to methods with corresponding calls as
determined by replacementMap.
Excludes bootloaded classes that are not AWT/Swing classes. Other exclusions are determined
by the set of excludedPackagePrefixes.
transform in interface java.lang.instrument.ClassFileTransformerjava.lang.instrument.IllegalClassFormatExceptionReplaceCallAgent