public abstract class DynamicProxySupport<RequiredInterfaceType>
extends java.lang.Object
implements java.lang.reflect.InvocationHandler
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
closed |
protected RequiredInterfaceType |
delegate |
protected java.util.Map<java.lang.String,java.lang.reflect.Method> |
proxiedMethods |
| Modifier | Constructor and Description |
|---|---|
protected |
DynamicProxySupport(RequiredInterfaceType delegate) |
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.Object |
callNativeMethod(java.lang.reflect.Method method,
java.lang.Object... args)
Delegates the call to the native method in the delegate.
|
RequiredInterfaceType |
createDynamicProxy() |
protected java.util.Deque<java.lang.ClassLoader> |
getClassLoadersToTry() |
protected java.lang.Class<?>[] |
getInterfaceClasses() |
protected java.lang.Class<RequiredInterfaceType> |
getRequiredInterfaceType() |
protected abstract void |
handleInvocationException(java.lang.Throwable e)
Down-call to handle exceptions after an invocation.
|
java.lang.Object |
invoke(java.lang.Object proxy,
java.lang.reflect.Method method,
java.lang.Object[] args) |
void |
markClosed() |
protected abstract void |
throwInvocationAfterClose(java.lang.String method) |
protected boolean closed
protected final RequiredInterfaceType delegate
protected final java.util.Map<java.lang.String,java.lang.reflect.Method> proxiedMethods
protected DynamicProxySupport(RequiredInterfaceType delegate)
public java.lang.Object invoke(java.lang.Object proxy,
java.lang.reflect.Method method,
java.lang.Object[] args)
throws java.lang.Throwable
invoke in interface java.lang.reflect.InvocationHandlerjava.lang.Throwableprotected abstract void handleInvocationException(java.lang.Throwable e)
throws java.lang.Throwable
e - java.lang.Throwableprotected abstract void throwInvocationAfterClose(java.lang.String method)
throws java.lang.Exception
java.lang.Exceptionprotected java.lang.Object callNativeMethod(java.lang.reflect.Method method,
java.lang.Object... args)
throws java.lang.Throwable
method - args - java.lang.Throwablepublic RequiredInterfaceType createDynamicProxy()
protected java.util.Deque<java.lang.ClassLoader> getClassLoadersToTry()
protected java.lang.Class<RequiredInterfaceType> getRequiredInterfaceType()
public void markClosed()
protected java.lang.Class<?>[] getInterfaceClasses()
Copyright © 2019. All Rights Reserved.