Package net.bytebuddy.asm
Class Advice.OffsetMapping.ForStackManipulation.OfAnnotationProperty<T extends Annotation>
java.lang.Object
net.bytebuddy.asm.Advice.OffsetMapping.ForStackManipulation.OfAnnotationProperty<T>
- Type Parameters:
T
- The annotation type this factory binds.
- All Implemented Interfaces:
Advice.OffsetMapping.Factory<T>
- Enclosing class:
Advice.OffsetMapping.ForStackManipulation
@Enhance
public static class Advice.OffsetMapping.ForStackManipulation.OfAnnotationProperty<T extends Annotation>
extends Object
implements Advice.OffsetMapping.Factory<T>
A factory for binding an annotation's property.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.OffsetMapping.Factory
Advice.OffsetMapping.Factory.AdviceType, Advice.OffsetMapping.Factory.Illegal<T extends Annotation>, Advice.OffsetMapping.Factory.Simple<T extends Annotation>
-
Field Summary
FieldsModifier and TypeFieldDescriptionThe annotation type.private final MethodDescription.InDefinedShape
The annotation property. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
OfAnnotationProperty
(Class<T> annotationType, MethodDescription.InDefinedShape property) Creates a factory for binding an annotation property. -
Method Summary
Modifier and TypeMethodDescriptionReturns the annotation type of this factory.make
(ParameterDescription.InDefinedShape target, AnnotationDescription.Loadable<T> annotation, Advice.OffsetMapping.Factory.AdviceType adviceType) Creates a new offset mapping for the supplied parameter if possible.static <S extends Annotation>
Advice.OffsetMapping.Factory<S> Creates a factory for an offset mapping that binds an annotation property.
-
Field Details
-
annotationType
The annotation type. -
property
The annotation property.
-
-
Constructor Details
-
OfAnnotationProperty
Creates a factory for binding an annotation property.- Parameters:
annotationType
- The annotation type.property
- The annotation property.
-
-
Method Details
-
of
public static <S extends Annotation> Advice.OffsetMapping.Factory<S> of(Class<S> annotationType, String property) Creates a factory for an offset mapping that binds an annotation property.- Type Parameters:
S
- The annotation type.- Parameters:
annotationType
- The annotation type to bind.property
- The property to bind.- Returns:
- A factory for binding a property of the annotation type.
-
getAnnotationType
Returns the annotation type of this factory.- Specified by:
getAnnotationType
in interfaceAdvice.OffsetMapping.Factory<T extends Annotation>
- Returns:
- The factory's annotation type.
-
make
public Advice.OffsetMapping make(ParameterDescription.InDefinedShape target, AnnotationDescription.Loadable<T> annotation, Advice.OffsetMapping.Factory.AdviceType adviceType) Creates a new offset mapping for the supplied parameter if possible.- Specified by:
make
in interfaceAdvice.OffsetMapping.Factory<T extends Annotation>
- Parameters:
target
- The parameter description for which to resolve an offset mapping.annotation
- The annotation that triggered this factory.adviceType
-true
if the binding is applied using advice method delegation.- Returns:
- A resolved offset mapping or
null
if no mapping can be resolved for this parameter.
-