up
This commit is contained in:
@@ -121,6 +121,7 @@ public class WebSocketServerCallbackManager {
|
||||
return method.invoke(service);
|
||||
}
|
||||
|
||||
// 第一个参数不是数组时
|
||||
if (!argumentsNode.get(0).isArray()) {
|
||||
Class<?> parameterType = Class.forName(argumentsNode.get(1).asText());
|
||||
Object arg = objectMapper.treeToValue(argumentsNode.get(0), parameterType);
|
||||
|
||||
@@ -13,12 +13,23 @@ import com.fasterxml.jackson.databind.JsonNode;
|
||||
* 定义了所有通过WebSocket与客户端通信的任务的通用方法
|
||||
* 包括任务名称、初始化参数、设置会话、更新消息、更新标题、更新进度等操作
|
||||
* <p>
|
||||
* 所有通过WebSocket与客户端通信的任务类都应实现此接口, 文档参考 .trace/rules/server_task_rules.md
|
||||
* tips:检查是否在 tasker_mapper.json 中注册
|
||||
* 所有通过WebSocket与客户端通信的任务类都应实现此接口, 通常应继承Tasker类并实现此接口
|
||||
* <p>
|
||||
* <b>实现注意事项:</b>
|
||||
* 1. 服务器端任务实现应继承Tasker基类,该基类已提供大部分通信功能的实现
|
||||
* 2. 不要在子类中重复实现setMessageHandler、setTitleHandler、setPropertyHandler和setProgressHandler方法,这些由Tasker基类提供
|
||||
* 3. 任务类应覆盖init方法以初始化参数和设置任务标题
|
||||
* 4. 任务类应覆盖execute方法实现具体业务逻辑,使用MessageHolder进行消息消息反馈
|
||||
* 5. 任务执行时使用updateProgress方法进行进度反馈
|
||||
* 6. 任务名称应与客户端对应的Tasker类名保持一致,以确保正确的通信映射
|
||||
* <p>
|
||||
* <b>注册要求:</b>
|
||||
* 任务类必须在tasker_mapper.json中注册,以确保WebSocketServerTaskManager能够正确识别和实例化
|
||||
*/
|
||||
public interface WebSocketServerTasker extends Callable<Object> {
|
||||
/**
|
||||
* 初始化任务参数
|
||||
* 任务类应在init方法中解析argsNode, 初始化任务参数
|
||||
*
|
||||
* @param argsNode 任务参数的JSON节点
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user