T
- the delegate typepublic static interface Aspects.InterceptBuilder<T>
Modifier and Type | Method and Description |
---|---|
Aspects.InterceptBuilder<T> |
after(BiFunctionWithException<Aspects.Invocation,java.lang.Object,java.lang.Object> after)
Provide a function that is called after the method is called.
|
Aspects.InterceptBuilder<T> |
around(BiFunctionWithException<Aspects.Invocation,java.util.concurrent.Callable<java.lang.Object>,java.lang.Object> around)
Provide a function that is called with the method calling function.
|
Aspects.InterceptBuilder<T> |
before(ConsumerWithException<Aspects.Invocation> before)
Provide a function that is called before the method is called.
|
T |
build()
Build the proxy
|
<A,B,R> Aspects.InterceptBuilder<T> |
intercept(BiFunctionWithException<A,B,R> intercept,
java.lang.String name,
java.lang.Class<A> aType,
java.lang.Class<B> bType)
Intercept a two argument method call
|
<A,R> Aspects.InterceptBuilder<T> |
intercept(FunctionWithException<A,R> intercept,
java.lang.String name,
java.lang.Class<A> type)
Intercept a one argument method call
|
Aspects.InterceptBuilder<T> |
intercept(FunctionWithException<Aspects.Invocation,java.lang.Object> intercept,
java.lang.String name,
java.lang.Class<?>... types)
Intercept a method call with a lambda.
|
<R> Aspects.InterceptBuilder<T> |
intercept(RunnableWithException intercept,
java.lang.String name)
Intercept a no method call
|
<R> Aspects.InterceptBuilder<T> |
intercept(SupplierWithException<R> intercept,
java.lang.String name)
Intercept a no method call
|
Aspects.InterceptBuilder<T> |
onException(BiFunctionWithException<Aspects.Invocation,java.lang.Throwable,java.lang.Object> exception)
Called when an exception occurs
|
Aspects.InterceptBuilder<T> intercept(FunctionWithException<Aspects.Invocation,java.lang.Object> intercept, java.lang.String name, java.lang.Class<?>... types)
intercept
- the lambda to interceptname
- the method nametypes
- the types<R> Aspects.InterceptBuilder<T> intercept(SupplierWithException<R> intercept, java.lang.String name)
intercept
- the no method lambdaname
- the name of the method without arguments<R> Aspects.InterceptBuilder<T> intercept(RunnableWithException intercept, java.lang.String name)
intercept
- the no method lambdaname
- the name of the method without arguments<A,R> Aspects.InterceptBuilder<T> intercept(FunctionWithException<A,R> intercept, java.lang.String name, java.lang.Class<A> type)
intercept
- the one argument method lambdaname
- the name of the method with one argument<A,B,R> Aspects.InterceptBuilder<T> intercept(BiFunctionWithException<A,B,R> intercept, java.lang.String name, java.lang.Class<A> aType, java.lang.Class<B> bType)
intercept
- the two argument method lambdaname
- the name of the method with two argumentsAspects.InterceptBuilder<T> around(BiFunctionWithException<Aspects.Invocation,java.util.concurrent.Callable<java.lang.Object>,java.lang.Object> around)
around
- the around advice (the argument is a callable that
should be calleAspects.InterceptBuilder<T> before(ConsumerWithException<Aspects.Invocation> before)
before
- adviceAspects.InterceptBuilder<T> after(BiFunctionWithException<Aspects.Invocation,java.lang.Object,java.lang.Object> after)
after
- adviceAspects.InterceptBuilder<T> onException(BiFunctionWithException<Aspects.Invocation,java.lang.Throwable,java.lang.Object> exception)
exception
- the throw exceptionT build()