Class TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFieldBinding<S extends Annotation>

java.lang.Object
net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFieldBinding<S>
Type Parameters:
S - The Annotation.annotationType() handled by this parameter binder.
All Implemented Interfaces:
TargetMethodAnnotationDrivenBinder.ParameterBinder<S>
Direct Known Subclasses:
FieldProxy.Binder, FieldValue.Binder.Delegate
Enclosing interface:
TargetMethodAnnotationDrivenBinder.ParameterBinder<T extends Annotation>

public abstract static class TargetMethodAnnotationDrivenBinder.ParameterBinder.ForFieldBinding<S extends Annotation> extends Object implements TargetMethodAnnotationDrivenBinder.ParameterBinder<S>
A parameter binder that binds a field's value.
  • Field Details

    • BEAN_PROPERTY

      protected static final String BEAN_PROPERTY
      Indicates that a name should be extracted from an accessor method.
      See Also:
  • Constructor Details

    • ForFieldBinding

      public ForFieldBinding()
  • Method Details

    • resolveAccessor

      private static FieldLocator.Resolution resolveAccessor(FieldLocator fieldLocator, MethodDescription methodDescription)
      Resolves a field locator for a potential accessor method.
      Parameters:
      fieldLocator - The field locator to use.
      methodDescription - The method description that is the potential accessor.
      Returns:
      A resolution for a field locator.
    • bind

      Creates a parameter binding for the given target parameter.
      Specified by:
      bind in interface TargetMethodAnnotationDrivenBinder.ParameterBinder<S extends Annotation>
      Parameters:
      annotation - The annotation that was cause for the delegation to this argument binder.
      source - The intercepted source method.
      target - Tge target parameter that is subject to be bound to intercepting the source method.
      implementationTarget - The target of the current implementation that is subject to this binding.
      assigner - An assigner that can be used for applying the binding.
      typing - The typing to apply.
      Returns:
      A parameter binding for the requested target method parameter.
    • fieldName

      protected abstract String fieldName(AnnotationDescription.Loadable<S> annotation)
      Extracts the field name from an annotation.
      Parameters:
      annotation - The annotation from which to extract the field name.
      Returns:
      The field name defined by the handled annotation.
    • declaringType

      protected abstract TypeDescription declaringType(AnnotationDescription.Loadable<S> annotation)
      Extracts the declaring type from an annotation.
      Parameters:
      annotation - The annotation from which to extract the declaring type.
      Returns:
      The declaring type defined by the handled annotation.
    • bind

      protected abstract MethodDelegationBinder.ParameterBinding<?> bind(FieldDescription fieldDescription, AnnotationDescription.Loadable<S> annotation, MethodDescription source, ParameterDescription target, Implementation.Target implementationTarget, Assigner assigner)
      Creates a parameter binding for the given target parameter.
      Parameters:
      fieldDescription - The field for which this binder binds a value.
      annotation - The annotation that was cause for the delegation to this argument binder.
      source - The intercepted source method.
      target - Tge target parameter that is subject to be bound to intercepting the source method.
      implementationTarget - The target of the current implementation that is subject to this binding.
      assigner - An assigner that can be used for applying the binding.
      Returns:
      A parameter binding for the requested target method parameter.