Class Retransformer
java.lang.Object
org.jboss.byteman.agent.Transformer
org.jboss.byteman.agent.Retransformer
- All Implemented Interfaces:
ClassFileTransformer
byte code transformer used to introduce byteman events into JBoss code
-
Field Summary
FieldsFields inherited from class Transformer
accessEnabler, AGENT_VERSION, ALLOW_CONFIG_UPDATE, BYTEMAN_PACKAGE_PREFIX, BYTEMAN_SAMPLE_PACKAGE_PREFIX, BYTEMAN_TEST_PACKAGE_PREFIX, checkerCache, COMPILE_TO_BYTECODE, COMPILE_TO_BYTECODE_COMPATIBILITY, DEBUG, DISALLOW_DOWNCAST, DUMP_CFG, DUMP_CFG_PARTIAL, DUMP_GENERATED_CLASSES, DUMP_GENERATED_CLASSES_DIR, DUMP_GENERATED_CLASSES_INTERMEDIATE, helperManager, inst, isRedefine, JAVA_LANG_PACKAGE_PREFIX, scriptRepository, SKIP_OVERRIDE_RULES, SYSPROPS_STRICT_MODE, TRANSFORM_ALL, TRANSFORM_ALL_COMPATIBILITY, VERBOSE, VERIFY_TRANSFORMED_BYTES -
Constructor Summary
ConstructorsConstructorDescriptionRetransformer(Instrumentation inst, ModuleSystem moduleSystem, List<String> scriptPaths, List<String> scriptTexts, boolean isRedefine) constructor allowing this transformer to be provided with access to the JVM's instrumentation implementation -
Method Summary
Modifier and TypeMethodDescriptionvoidappendJarFile(PrintWriter out, JarFile jarfile, boolean isBoot) protected voidcollectAffectedNames(List<RuleScript> ruleScripts, List<String> classList, List<String> interfaceList, List<String> superClassList, List<String> superInterfaceList) Returns jars that this retransformer was asked toaddto the boot classloader.Returns jars that this retransformer was asked toaddto the system classloader.voidinstallScript(List<String> scriptTexts, List<String> scriptNames, PrintWriter out) voidlistScripts(PrintWriter out) voidremoveScripts(List<String> scriptTexts, PrintWriter out) Methods inherited from class Transformer
allowConfigUpdate, computeDumpGeneratedClasses, computeDumpGeneratedClassesDir, computeDumpGeneratedClassesIntermediate, disableTriggers, disallowDowncast, dumpScript, enableTriggers, getClassChecker, getDumpGeneratedClassesDir, installBootScripts, installPolicy, isBlacklisted, isBytemanClass, isCompileToBytecode, isDebug, isDumpCFG, isDumpCFGPartial, isDumpGeneratedClasses, isDumpGeneratedClassesIntermediate, isSkipClass, isTransformable, isTriggeringEnabled, isVerbose, maybeDumpClass, maybeDumpClassIntermediate, skipOverrideRules, transform, transform, updateConfigurationMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ClassFileTransformer
transform
-
Field Details
-
sysJars
-
bootJars
-
-
Constructor Details
-
Retransformer
public Retransformer(Instrumentation inst, ModuleSystem moduleSystem, List<String> scriptPaths, List<String> scriptTexts, boolean isRedefine) throws Exception constructor allowing this transformer to be provided with access to the JVM's instrumentation implementation- Parameters:
inst- the instrumentation object used to interface to the JVMmoduleSystem- the module system to use for helper and class loadingscriptPaths- list of file paths for each input scriptscriptTexts- the text of each input scriptisRedefine- true if class redefinition is allowed false if not- Throws:
Exception- if a script is in error
-
-
Method Details
-
installScript
-
collectAffectedNames
-
listScripts
- Throws:
Exception
-
removeScripts
- Throws:
Exception
-
appendJarFile
- Throws:
Exception
-
getLoadedBootJars
Returns jars that this retransformer was asked toaddto the boot classloader. Note that the returned set will not include those jars that were added to the instrumentor object at startup via the -javaagent command line argument.- Returns:
- set of jar pathnames for all jars loaded in the boot classloader
-
getLoadedSystemJars
Returns jars that this retransformer was asked toaddto the system classloader. Note that the returned set will not include those jars that were added to the instrumentor object at startup via the -javaagent command line argument.- Returns:
- set of jar pathnames for all jars loaded in the system classloader
-