Interface ParameterConfig

All Superinterfaces:
DeclarationConfig

public interface ParameterConfig extends DeclarationConfig
Allows adding annotations to and removing annotations from a method parameter. Note that the method parameter is not physically altered, the modifications are only seen by the CDI container.
Since:
4.0
See Also:
  • Method Details

    • info

      Returns the ParameterInfo corresponding to this transformed method parameter.
      Specified by:
      info in interface DeclarationConfig
      Returns:
      the ParameterInfo corresponding to this transformed method parameter, never null
    • addAnnotation

      ParameterConfig addAnnotation(Class<? extends Annotation> annotationType)
      Adds a marker annotation of given type to this method parameter. Does not allow configuring annotation members.
      Specified by:
      addAnnotation in interface DeclarationConfig
      Parameters:
      annotationType - the annotation type, must not be null
      Returns:
      this configurator object, to allow fluent usage
    • addAnnotation

      ParameterConfig addAnnotation(AnnotationInfo annotation)
      Adds given annotation to this method parameter. The AnnotationInfo can be obtained from an annotation target, or constructed from scratch using AnnotationBuilder.
      Specified by:
      addAnnotation in interface DeclarationConfig
      Parameters:
      annotation - the annotation to add to this method parameter, must not be null
      Returns:
      this configurator object, to allow fluent usage
    • addAnnotation

      ParameterConfig addAnnotation(Annotation annotation)
      Adds given annotation to this method parameter. The annotation instance is typically a subclass of AnnotationLiteral.
      Specified by:
      addAnnotation in interface DeclarationConfig
      Parameters:
      annotation - the annotation to add to this method parameter, must not be null
      Returns:
      this configurator object, to allow fluent usage
    • removeAnnotation

      ParameterConfig removeAnnotation(Predicate<AnnotationInfo> predicate)
      Removes all annotations matching given predicate from this method parameter.
      Specified by:
      removeAnnotation in interface DeclarationConfig
      Parameters:
      predicate - an annotation predicate, must not be null
      Returns:
      this configurator object, to allow fluent usage
    • removeAllAnnotations

      ParameterConfig removeAllAnnotations()
      Removes all annotations from this method parameter.
      Specified by:
      removeAllAnnotations in interface DeclarationConfig
      Returns:
      this configurator object, to allow fluent usage