final class InterceptorStackCallback
extends java.lang.Object
implements java.lang.reflect.InvocationHandler
Acts as a JDK InvocationHandler
so the proxy using it can avoid Guice-specific types.
Modifier and Type | Class and Description |
---|---|
private class |
InterceptorStackCallback.InterceptedMethodInvocation |
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
GUICE_INTERNAL_AOP_PACKAGE |
(package private) org.aopalliance.intercept.MethodInterceptor[] |
interceptors |
(package private) java.lang.reflect.Method |
method |
(package private) java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object> |
superInvoker |
Constructor and Description |
---|
InterceptorStackCallback(java.lang.reflect.Method method,
java.util.List<org.aopalliance.intercept.MethodInterceptor> interceptors,
java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object> superInvoker) |
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
invoke(java.lang.Object proxy,
java.lang.reflect.Method unused,
java.lang.Object[] arguments) |
private void |
pruneStacktrace(java.lang.Throwable throwable)
Removes stacktrace elements related to AOP internal mechanics from the throwable's stack trace
and any causes it may have.
|
private static final java.lang.String GUICE_INTERNAL_AOP_PACKAGE
final java.lang.reflect.Method method
final org.aopalliance.intercept.MethodInterceptor[] interceptors
final java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object> superInvoker
public InterceptorStackCallback(java.lang.reflect.Method method, java.util.List<org.aopalliance.intercept.MethodInterceptor> interceptors, java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object> superInvoker)
public java.lang.Object invoke(java.lang.Object proxy, java.lang.reflect.Method unused, java.lang.Object[] arguments) throws java.lang.Throwable
invoke
in interface java.lang.reflect.InvocationHandler
java.lang.Throwable
private void pruneStacktrace(java.lang.Throwable throwable)