package cm.android.hook;
import java.lang.reflect.Method;
public abstract class MethodProxy {
private boolean enable = true;
public abstract String getMethodName();
public boolean beforeCall(Object who, Method method, Object... args) {
return true;
}
public Object call(Object who, Method method, Object... args) throws Throwable {
return method.invoke(who, args);
}
public Object afterCall(Object who, Method method, Object[] args, Object result) throws Throwable {
return result;
}
public boolean isEnable() {
return enable;
}
public void setEnable(boolean enable) {
this.enable = enable;
}
@Override
public String toString() {
return "Method : " + getMethodName();
}
}