package com.dianping.pigeon.remoting.invoker.proxy;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
/**
* Created by chenchongze on 16/8/22.
*/
public class MockProxyWrapper {
private final Object proxy;
public MockProxyWrapper(Object proxy) {
if (proxy == null) {
throw new IllegalArgumentException("proxy == null");
}
this.proxy = proxy;
}
public Object invoke(String methodName, Class<?>[] parameterTypes, Object[] arguments)
throws Throwable {
Method method = proxy.getClass().getMethod(methodName, parameterTypes);
try {
return method.invoke(proxy, arguments);
} catch (InvocationTargetException e) {
throw e.getTargetException();
}
}
}