Package com.google.inject.internal
Class InterceptorStackCallback
- java.lang.Object
-
- com.google.inject.internal.InterceptorStackCallback
-
- All Implemented Interfaces:
java.lang.reflect.InvocationHandler
final class InterceptorStackCallback extends java.lang.Object implements java.lang.reflect.InvocationHandler
Intercepts a method with a stack of interceptors.Acts as a JDK
InvocationHandler
so the proxy using it can avoid Guice-specific types.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
InterceptorStackCallback.InterceptedMethodInvocation
-
Field Summary
Fields Modifier and Type Field 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 Summary
Constructors Constructor 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)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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.
-
-
-
Field Detail
-
GUICE_INTERNAL_AOP_PACKAGE
private static final java.lang.String GUICE_INTERNAL_AOP_PACKAGE
- See Also:
- Constant Field Values
-
method
final java.lang.reflect.Method method
-
interceptors
final org.aopalliance.intercept.MethodInterceptor[] interceptors
-
superInvoker
final java.util.function.BiFunction<java.lang.Object,java.lang.Object[],java.lang.Object> superInvoker
-
-
Method Detail
-
invoke
public java.lang.Object invoke(java.lang.Object proxy, java.lang.reflect.Method unused, java.lang.Object[] arguments) throws java.lang.Throwable
- Specified by:
invoke
in interfacejava.lang.reflect.InvocationHandler
- Throws:
java.lang.Throwable
-
pruneStacktrace
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.
-
-