Class AgentBuilder.Default.Transformation.SimpleMatcher
java.lang.Object
net.bytebuddy.agent.builder.AgentBuilder.Default.Transformation.SimpleMatcher
- All Implemented Interfaces:
AgentBuilder.RawMatcher
- Enclosing class:
AgentBuilder.Default.Transformation
@Enhance
protected static class AgentBuilder.Default.Transformation.SimpleMatcher
extends Object
implements AgentBuilder.RawMatcher
A matcher that matches any type that is touched by a transformer without being ignored.
-
Nested Class Summary
Nested classes/interfaces inherited from interface AgentBuilder.RawMatcher
AgentBuilder.RawMatcher.Conjunction, AgentBuilder.RawMatcher.Disjunction, AgentBuilder.RawMatcher.ForElementMatchers, AgentBuilder.RawMatcher.ForLoadState, AgentBuilder.RawMatcher.ForResolvableTypes, AgentBuilder.RawMatcher.Inversion, AgentBuilder.RawMatcher.Trivial -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AgentBuilder.RawMatcherIdentifies types that should not be instrumented.private final List<AgentBuilder.Default.Transformation> The transformations to apply on non-ignored types. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedSimpleMatcher(AgentBuilder.RawMatcher ignoreMatcher, List<AgentBuilder.Default.Transformation> transformations) Creates a new simple matcher. -
Method Summary
Modifier and TypeMethodDescriptionbooleanmatches(TypeDescription typeDescription, ClassLoader classLoader, JavaModule module, Class<?> classBeingRedefined, ProtectionDomain protectionDomain) Decides if the giventypeDescriptionshould be instrumented with the entailedAgentBuilder.Transformers.
-
Field Details
-
ignoreMatcher
Identifies types that should not be instrumented. -
transformations
The transformations to apply on non-ignored types.
-
-
Constructor Details
-
SimpleMatcher
protected SimpleMatcher(AgentBuilder.RawMatcher ignoreMatcher, List<AgentBuilder.Default.Transformation> transformations) Creates a new simple matcher.- Parameters:
ignoreMatcher- Identifies types that should not be instrumented.transformations- The transformations to apply on non-ignored types.
-
-
Method Details
-
matches
public boolean matches(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, @MaybeNull Class<?> classBeingRedefined, @MaybeNull ProtectionDomain protectionDomain) Decides if the giventypeDescriptionshould be instrumented with the entailedAgentBuilder.Transformers.- Specified by:
matchesin interfaceAgentBuilder.RawMatcher- Parameters:
typeDescription- A description of the type to be instrumented.classLoader- The class loader of the instrumented type. Might benullif this class loader represents the bootstrap class loader.module- The transformed type's module ornullif the current VM does not support modules.classBeingRedefined- The class being redefined which is only notnullif a retransformation is applied.protectionDomain- The protection domain of the type being transformed ornullif none is available.- Returns:
trueif the entailedAgentBuilder.Transformers should be applied for the giventypeDescription.
-