Class ReloadCommand<NCS>
java.lang.Object
io.github.theword.queqiao.core.command.CommandNode<NCS>
io.github.theword.queqiao.core.command.builtin.ReloadCommand<NCS>
重载命令
本命令只依赖一个"重载动作"回调,而不直接持有 QueQiaoRuntime:
重载是 Runtime 的生命周期操作,回调由 Runtime 侧提供(如 runtime::reload),
命令层因此不必反向依赖 Runtime 类型,也不必通过 Runtime 的 getter 取用其它服务。
回执职责在本命令:Runtime 只返回 ReloadResult(不自己回执),
由本命令决定如何把进度消息展示给调用者。这样 Runtime 与 WebsocketManager
都不需要知道命令上下文的存在。
-
Field Summary
Fields inherited from class io.github.theword.queqiao.core.command.CommandNode
logger -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class io.github.theword.queqiao.core.command.CommandNode
addChild, execute, freeze, getChildren, getFullPath, getFullPermissionNode, getParent, getPermissionNode, getUsage, isFrozen, isRoot, sendCommandTree
-
Constructor Details
-
ReloadCommand
-
-
Method Details
-
getName
获取命令名称- Specified by:
getNamein classCommandNode<NCS>- Returns:
- reload
-
getDescription
获取命令描述- Specified by:
getDescriptionin classCommandNode<NCS>- Returns:
- 重载配置文件并重新连接所有 Websocket Client
-
onExecute
重载 WebSocket reload 命令调用先逐条回显 Runtime 返回的进度消息,再回显本命令自己的完成提示—— 与迁移前的消息顺序保持一致。
- Specified by:
onExecutein classCommandNode<NCS>- Parameters:
context- 命令执行上下文args- 命令参数
-