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.
-
Interface Summary Interface Description AspectProvider<T extends Annotation> Provides theMethodInterceptorfor the given aspect.Fallback A fallback or recovery method used with Aspects.Invocation Method invocation using inMethodInterceptor.invoke(Invocation)for Aspects.Invocation.CheckedRunnable Runnable with checked exceptions.Invocation.CheckedSupplier<T> Callable with checked exceptions.MethodInterceptor Provides method interception such that logic can be provided both before and after method invocation. -
Class Summary Class Description Invocation.Build<T> Builds Invocation for both callable and runnable methods.Invocation.Call<T> Callable based Invocation with checked exceptions.Invocation.Run Runnable based Invocation. -
Exception Summary Exception Description InvocationException Exception occurring during method interception. -
Annotation Types Summary Annotation Type Description Aspect Meta annotation used to define an Aspect.