提交 87442a5c authored 作者: xuxueli's avatar xuxueli

执行器动态代理对象,拦截非业务方法的执行

上级 ee1e32dd
...@@ -1024,6 +1024,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段 ...@@ -1024,6 +1024,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
- 3、修复任务监控线程被耗时任务阻塞的问题; - 3、修复任务监控线程被耗时任务阻塞的问题;
- 4、修复任务监控线程无法监控任务触发和执行状态均未0的问题; - 4、修复任务监控线程无法监控任务触发和执行状态均未0的问题;
- 5、调度中心项目日志配置改为xml文件格式; - 5、调度中心项目日志配置改为xml文件格式;
- 6、执行器动态代理对象,拦截非业务方法的执行;
### TODO LIST ### TODO LIST
- 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限; - 1、任务权限管理:执行器为粒度分配权限,核心操作校验权限;
......
...@@ -36,6 +36,12 @@ public class NetComClientProxy implements FactoryBean<Object> { ...@@ -36,6 +36,12 @@ public class NetComClientProxy implements FactoryBean<Object> {
new InvocationHandler() { new InvocationHandler() {
@Override @Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
// filter method like "Object.toString()"
if (Object.class.getName().equals(method.getDeclaringClass().getName())) {
logger.error(">>>>>>>>>>> xxl-rpc proxy class-method not support [{}.{}]", method.getDeclaringClass().getName(), method.getName());
throw new RuntimeException("xxl-rpc proxy class-method not support");
}
// request // request
RpcRequest request = new RpcRequest(); RpcRequest request = new RpcRequest();
...@@ -46,7 +52,7 @@ public class NetComClientProxy implements FactoryBean<Object> { ...@@ -46,7 +52,7 @@ public class NetComClientProxy implements FactoryBean<Object> {
request.setMethodName(method.getName()); request.setMethodName(method.getName());
request.setParameterTypes(method.getParameterTypes()); request.setParameterTypes(method.getParameterTypes());
request.setParameters(args); request.setParameters(args);
// send // send
RpcResponse response = client.send(request); RpcResponse response = client.send(request);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论