@HashCodeAndEqualsPlugin.Enhance public static class AgentBuilder.Default.Transformation.Simple extends java.lang.Object implements AgentBuilder.Default.Transformation
| Modifier and Type | Class and Description |
|---|---|
protected static class |
AgentBuilder.Default.Transformation.Simple.Resolution
A resolution that performs a type transformation.
|
AgentBuilder.Default.Transformation.Compound, AgentBuilder.Default.Transformation.Ignored, AgentBuilder.Default.Transformation.SimpleAgentBuilder.RawMatcher.Conjunction, AgentBuilder.RawMatcher.Disjunction, AgentBuilder.RawMatcher.ForElementMatchers, AgentBuilder.RawMatcher.ForLoadState, AgentBuilder.RawMatcher.ForResolvableTypes, AgentBuilder.RawMatcher.Inversion, AgentBuilder.RawMatcher.Trivial| Modifier and Type | Field and Description |
|---|---|
private boolean |
decorator
true if this transformer serves as a decorator. |
private AgentBuilder.RawMatcher |
rawMatcher
The raw matcher that is represented by this transformation.
|
private AgentBuilder.Transformer |
transformer
The transformer that is represented by this transformation.
|
| Modifier | Constructor and Description |
|---|---|
protected |
Simple(AgentBuilder.RawMatcher rawMatcher,
AgentBuilder.Transformer transformer,
boolean decorator)
Creates a new transformation.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
matches(TypeDescription typeDescription,
java.lang.ClassLoader classLoader,
JavaModule module,
java.lang.Class<?> classBeingRedefined,
java.security.ProtectionDomain protectionDomain)
Decides if the given
typeDescription should be instrumented with the entailed
AgentBuilder.Transformers. |
AgentBuilder.Default.Transformation.Resolution |
resolve(TypeDescription typeDescription,
java.lang.ClassLoader classLoader,
JavaModule module,
java.lang.Class<?> classBeingRedefined,
boolean loaded,
java.security.ProtectionDomain protectionDomain,
TypePool typePool)
Resolves an attempted transformation to a specific transformation.
|
private final AgentBuilder.RawMatcher rawMatcher
private final AgentBuilder.Transformer transformer
private final boolean decorator
true if this transformer serves as a decorator.protected Simple(AgentBuilder.RawMatcher rawMatcher, AgentBuilder.Transformer transformer, boolean decorator)
rawMatcher - The raw matcher that is represented by this transformation.transformer - The transformer that is represented by this transformation.decorator - true if this transformer serves as a decorator.public boolean matches(TypeDescription typeDescription, java.lang.ClassLoader classLoader, JavaModule module, java.lang.Class<?> classBeingRedefined, java.security.ProtectionDomain protectionDomain)
typeDescription should be instrumented with the entailed
AgentBuilder.Transformers.matches in interface AgentBuilder.RawMatchertypeDescription - A description of the type to be instrumented.classLoader - The class loader of the instrumented type. Might be null if this class
loader represents the bootstrap class loader.module - The transformed type's module or null if the current VM does not support modules.classBeingRedefined - The class being redefined which is only not null if a retransformation
is applied.protectionDomain - The protection domain of the type being transformed.true if the entailed AgentBuilder.Transformers should
be applied for the given typeDescription.public AgentBuilder.Default.Transformation.Resolution resolve(TypeDescription typeDescription, java.lang.ClassLoader classLoader, JavaModule module, java.lang.Class<?> classBeingRedefined, boolean loaded, java.security.ProtectionDomain protectionDomain, TypePool typePool)
resolve in interface AgentBuilder.Default.TransformationtypeDescription - A description of the type that is to be transformed.classLoader - The class loader of the type being transformed.module - The transformed type's module or null if the current VM does not support modules.classBeingRedefined - In case of a type redefinition, the loaded type being transformed or null if that is not the case.loaded - true if the instrumented type is loaded.protectionDomain - The protection domain of the type being transformed.typePool - The type pool to apply during type creation.