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 java.lang.Object
      implements AspectInterceptorBuilder<T>

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected AnnotationAccess` | `annotationAccess` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `AbtractAspectInterceptorBuilder​(AnnotationAccess annotationAccess)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `AnnotationProvider` | `getClassAnnotationProvider()` | Returns a provider for annotations on the service class and interface.
    `<T extends java.lang.annotation.Annotation> T` | `getMethodAnnotation​(java.lang.reflect.Method method, java.lang.Class<T> annotationType)` | Gets an annotation from a method, via `AnnotationAccess.getMethodAnnotationProvider(String, Class...)`.
    `AnnotationProvider` | `getMethodAnnotationProvider​(java.lang.String methodName, java.lang.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 Detail

    - #### annotationAccess

          protected final AnnotationAccess annotationAccess

  - ### Constructor Detail

    - #### AbtractAspectInterceptorBuilder

          public AbtractAspectInterceptorBuilder​(AnnotationAccess annotationAccess)

  - ### Method Detail

    - #### 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​(java.lang.String methodName,
                                                                java.lang.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 java.lang.annotation.Annotation> T getMethodAnnotation​(java.lang.reflect.Method method,
                                                                                   java.lang.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