Package org.apache.tapestry5.ioc.internal.services

# Class AbtractAspectInterceptorBuilder<T>

java.lang.Object
org.apache.tapestry5.ioc.internal.services.AbtractAspectInterceptorBuilder<T>

All Implemented Interfaces:
  `AnnotationAccess`, `MethodAdviceReceiver`, `AspectInterceptorBuilder<T>`

Direct Known Subclasses:
  `AspectInterceptorBuilderImpl`

public abstract class AbtractAspectInterceptorBuilder<T> extends Object implements AspectInterceptorBuilder<T>

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final AnnotationAccess`
  `annotationAccess`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbtractAspectInterceptorBuilder(AnnotationAccess annotationAccess)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AnnotationProvider`
  `getClassAnnotationProvider()`
  Returns a provider for annotations on the service class and interface.
  `<T extends Annotation>
  T`
  `getMethodAnnotation(Method method, Class<T> annotationType)`
  Gets an annotation from a method, via `AnnotationAccess.getMethodAnnotationProvider(String, Class...)`.
  `AnnotationProvider`
  `getMethodAnnotationProvider(String methodName, Class... parameterTypes)`
  Returns a provider for annotations of a method of the class.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface org.apache.tapestry5.ioc.services.AspectInterceptorBuilder

  `build`

  ### Methods inherited from interface org.apache.tapestry5.ioc.MethodAdviceReceiver

  `adviseAllMethods, adviseMethod, getInterface`

- ## Field Details

  - ### annotationAccess

    protected final AnnotationAccess annotationAccess

- ## Constructor Details

  - ### AbtractAspectInterceptorBuilder

    public AbtractAspectInterceptorBuilder(AnnotationAccess annotationAccess)

- ## Method Details

  - ### getClassAnnotationProvider

    public AnnotationProvider getClassAnnotationProvider()
    Description copied from interface: `AnnotationAccess`
    Returns a provider for annotations on the service class and interface. This will reflect annotations defined by the implementation class itself, plus annotations defined by the service interface (implementation class annotations take precedence).
    Specified by:
      `getClassAnnotationProvider` in interface `AnnotationAccess`
    Returns:
      an AnnotationProvider instance.

  - ### getMethodAnnotationProvider

    public AnnotationProvider getMethodAnnotationProvider(String methodName, Class... parameterTypes)
    Description copied from interface: `AnnotationAccess`
    Returns a provider for annotations of a method of the class. This includes annotations on the implementation method, plus annotations on the corresponding service interface method (if such a method exists), with precedence on the implementation class method annotations.
    Specified by:
      `getMethodAnnotationProvider` in interface `AnnotationAccess`
    Parameters:
      `methodName` - the name of the method.
      `parameterTypes` - the types of the parameters of the method.
    Returns:
      an AnnotationProvider instance. *

  - ### getMethodAnnotation

    public <T extends Annotation> T getMethodAnnotation(Method method, Class<T> annotationType)
    Description copied from interface: `MethodAdviceReceiver`
    Gets an annotation from a method, via `AnnotationAccess.getMethodAnnotationProvider(String, Class...)`.
    Specified by:
      `getMethodAnnotation` in interface `MethodAdviceReceiver`
    Type Parameters:
      `T` - type of annotation
    Parameters:
      `method` - method to search
      `annotationType` - type of annotation
    Returns:
      the annotation found on the underlying implementation class (if known) or service interface, or null if not found