33 lines
751 B
Java
33 lines
751 B
Java
package org.gcube.common.clients.stubs.jaxws.proxies;
|
|
|
|
import java.lang.reflect.InvocationHandler;
|
|
import java.lang.reflect.Method;
|
|
|
|
import org.gcube.common.authorization.library.provider.CalledMethodProvider;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
public class MethodRetriever<T> implements InvocationHandler{
|
|
|
|
public static Logger log = LoggerFactory.getLogger(MethodRetriever.class);
|
|
|
|
private T service;
|
|
|
|
public MethodRetriever(T service){
|
|
this.service= service;
|
|
}
|
|
|
|
public Object invoke(Object proxy, Method method,
|
|
Object[] args) throws Throwable {
|
|
CalledMethodProvider.instance.set(method.getName());
|
|
try{
|
|
return method.invoke(service, args);
|
|
}finally{
|
|
CalledMethodProvider.instance.reset();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|