Module io.avaje.inject
Package io.avaje.inject.aop
package io.avaje.inject.aop
Support for AOP Aspects.
Aspects allow us to define method interceptors and then have this method interception apply to specific methods or all public methods of a class.
An example of an Aspect might be Retry which will invoke the underlying and then retry potentially multiple times if that invocation fails.
-
ClassDescriptionMeta annotation used to define an Aspect.Marks an External Annotation as being used for aspectsAspectProvider<T extends Annotation>Provides the
MethodInterceptor
for the given aspect.A fallback or recovery method used with Aspects.Method invocation using inMethodInterceptor.invoke(Invocation)
for Aspects.Invocation base type for both callable and runnable methods.Callable based Invocation with checked exceptions.Runnable with checked exceptions.Callable with checked exceptions.Runnable based Invocation.Exception occurring during method interception.Provides method interception such that logic can be provided both before and after method invocation.