Class MemberSubstitution.WithoutSpecification.ForMatchedByteCodeElement
java.lang.Object
net.bytebuddy.asm.MemberSubstitution.WithoutSpecification<MemberSubstitution.Target.ForMember>
net.bytebuddy.asm.MemberSubstitution.WithoutSpecification.ForMatchedByteCodeElement
- Enclosing class:
MemberSubstitution.WithoutSpecification<T extends MemberSubstitution.Target>
@Enhance
protected static class MemberSubstitution.WithoutSpecification.ForMatchedByteCodeElement
extends MemberSubstitution.WithoutSpecification<MemberSubstitution.Target.ForMember>
Describes a member substitution that requires a specification for how to replace a byte code element.
-
Nested Class Summary
Nested classes/interfaces inherited from class MemberSubstitution.WithoutSpecification
MemberSubstitution.WithoutSpecification.ForMatchedByteCodeElement, MemberSubstitution.WithoutSpecification.ForMatchedDynamicInvocation, MemberSubstitution.WithoutSpecification.ForMatchedField, MemberSubstitution.WithoutSpecification.ForMatchedMethod -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ElementMatcher<? super ByteCodeElement.Member> A matcher for any byte code elements that should be substituted.Fields inherited from class MemberSubstitution.WithoutSpecification
failIfNoMatch, methodGraphCompiler, replacementFactory, strict, typePoolResolver -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedForMatchedByteCodeElement(MethodGraph.Compiler methodGraphCompiler, MemberSubstitution.TypePoolResolver typePoolResolver, boolean strict, boolean failIfNoMatch, MemberSubstitution.Replacement.Factory replacementFactory, ElementMatcher<? super ByteCodeElement.Member> matcher) Creates a new member substitution for a matched byte code element that requires a specification for how to perform a substitution. -
Method Summary
Modifier and TypeMethodDescriptionreplaceWith(MemberSubstitution.Substitution.Factory<? super MemberSubstitution.Target.ForMember> substitutionFactory) Replaces any interaction with the supplied substitution.
-
Field Details
-
matcher
A matcher for any byte code elements that should be substituted.
-
-
Constructor Details
-
ForMatchedByteCodeElement
protected ForMatchedByteCodeElement(MethodGraph.Compiler methodGraphCompiler, MemberSubstitution.TypePoolResolver typePoolResolver, boolean strict, boolean failIfNoMatch, MemberSubstitution.Replacement.Factory replacementFactory, ElementMatcher<? super ByteCodeElement.Member> matcher) Creates a new member substitution for a matched byte code element that requires a specification for how to perform a substitution.- Parameters:
methodGraphCompiler- The method graph compiler to use.typePoolResolver- The type pool resolver to use.strict-trueif the method processing should be strict where an exception is raised if a member cannot be found.failIfNoMatch-trueif the instrumentation should fail if applied to a method without match.replacementFactory- The replacement factory to use.matcher- A matcher for any byte code elements that should be substituted.
-
-
Method Details
-
replaceWith
public MemberSubstitution replaceWith(MemberSubstitution.Substitution.Factory<? super MemberSubstitution.Target.ForMember> substitutionFactory) Replaces any interaction with the supplied substitution.- Specified by:
replaceWithin classMemberSubstitution.WithoutSpecification<MemberSubstitution.Target.ForMember>- Parameters:
substitutionFactory- The substitution factory to use for creating the applied substitution.- Returns:
- A member substitution that replaces any matched byte code element with the supplied substitution.
-