Annotation Type Aspect


Meta annotation used to define an Aspect.

Create an annotation and annotate with @Aspect to define an aspect annotation. The target() specifies the associated type that implements AspectProvider. The aspect provider should be a @Singleton such that registers with avaje-inject.

  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Specify the AspectProvider for this aspect.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    int
    Specify the priority ordering when multiple aspects are on a method.
  • Element Details

    • ordering

      Specify the priority ordering when multiple aspects are on a method.

      When multiple aspects are on a method they are nested. The highest ordering value will be the outer-most aspect, the lowest ordering will be the inner-most aspect.

      The outer-most aspect will have it's before executed first, followed by the before of the inner nested aspects ultimately down the invocation of the target method.

      The reverse ordering occurs for after with the outer-most aspect having it's after executed last.

      Returns:
      The ordering of this aspect. High value for outer-most aspect.
      Default:
      1000