Package org.codehaus.mojo.exec
Class BlockExitTransformer
java.lang.Object
org.codehaus.mojo.exec.BlockExitTransformer
- All Implemented Interfaces:
ClassFileTransformer
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final URLClassLoader
private final org.apache.maven.plugin.logging.Log
-
Constructor Summary
ConstructorsConstructorDescriptionBlockExitTransformer
(URLClassLoader classLoader, org.apache.maven.plugin.logging.Log logger) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
private org.objectweb.asm.ClassWriter
Creates a newClassWriter
that uses the dedicatedClassLoader
of this transformer.byte[]
transform
(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer)
-
Field Details
-
classLoader
-
logger
private final org.apache.maven.plugin.logging.Log logger
-
-
Constructor Details
-
BlockExitTransformer
BlockExitTransformer(URLClassLoader classLoader, org.apache.maven.plugin.logging.Log logger)
-
-
Method Details
-
transform
public byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException - Specified by:
transform
in interfaceClassFileTransformer
- Throws:
IllegalClassFormatException
-
createClassWriter
private org.objectweb.asm.ClassWriter createClassWriter()Creates a newClassWriter
that uses the dedicatedClassLoader
of this transformer.For bigger and more complicated classes
ClassWriter
requires access to classloader where can found classes used in transformed class.- Returns:
- a new
ClassWriter
-
close
- Throws:
IOException
-