XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEServerManager

【Java】我的世界XFE服务器管理器

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFEServerManager

实现内容自动更新、受管重启与本地 UI 预览

本次提交实现了内容自动分发、客户端校验与受管专服自动重启,涵盖服务端、客户端、协议、Web UI、文档与测试。新增内容分发与校验协议,支持内容包分块下载、SHA-256 校验、信任机制,拒绝不兼容或篡改内容,所有写入均为原子操作。实现本地 supervisor 协议,专服内容发布后可自动重启,严格校验会话与授权,异常/取消/指纹变化均不重启。Forge 端集成内容同步与 Mixin 注入,客户端主菜单自动检查内容,支持进度反馈与自动/手动重启。Web UI 增加自动更新检测、重启状态展示,完善文档与自动化测试,覆盖协议、校验、重启、异常与 UI 交互。触发器与富文本编辑器增强,提升可用性与安全性。视觉与交互采用 Minecraft 风格主题,增强一致性与可访问性。 同时引入全新“Minecraft 风格本地 UI 预览”开发环境,新增 dev-preview 目录及相关文件,实现无需后端的本地 UI 预览、内存 API、像素风主题与图标组件,完善可访问性与交互测试。补充 Forge 平台相关单元测试,保证内容同步与 UI 逻辑的完整性。

4a41e79
XFE工作室室长 <mail@xfegzs.com>
提交于

代码差异

85 个文件 +5732 -162
Modified README.md +6 -1
Modified README.zh-CN.md +2 -1
Modified common/infra/build.gradle +12 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/config/RichTextMessageValidator.java +73 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/ContentManagementService.java +1 -1
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/ContentPublicationService.java +5 -1
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/ContentUpdateBundle.java +444 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/ContentUpdateDownloadClient.java +198 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/ContentUpdateTrustStore.java +48 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/restart/ContentRestartController.java +187 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/restart/ContentSupervisorConfig.java +67 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/restart/ContentSupervisorMain.java +161 -0
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/content/restart/RestartProtocol.java +189 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/persistence/SqliteTriggerRepository.java +7 -0
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/config/RichTextMessageValidatorTest.java +42 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/content/ContentUpdateBundleTest.java +230 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/content/ContentUpdateDownloadClientTest.java +138 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/content/restart/ContentRestartControllerTest.java +209 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/content/restart/ContentSupervisorTest.java +62 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/content/restart/SupervisorTestChild.java +34 -0
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/persistence/SqliteTriggerRepositoryTest.java +18 -0
Modified docs/compatibility.md +1 -1
Added docs/content-auto-update.md +57 -0
Added docs/content-supervisor.properties.example +21 -0
Modified docs/custom-content-verification.md +10 -1
Modified docs/custom-content.md +12 -5
Added docs/minecraft-ui.md +53 -0
Modified docs/openapi.yaml +11 -0
Modified docs/triggers.md +16 -1
Added platform/forge-1.20.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSyncBridge.java +20 -0
Added platform/forge-1.20.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentConnectScreenMixin.java +26 -0
Added platform/forge-1.20.6/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSyncBridge.java +20 -0
Added platform/forge-1.20.6/src/main/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentConnectScreenMixin.java +27 -0
Added platform/forge-1.21.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSyncBridge.java +20 -0
Added platform/forge-1.21.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentConnectScreenMixin.java +27 -0
Added platform/forge-1.21.11/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSyncBridge.java +18 -0
Added platform/forge-1.21.11/src/main/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentConnectScreenMixin.java +27 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentRegistry.java +11 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentRestart.java +181 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentRuntime.java +9 -7
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSync.java +124 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeManagementGateway.java +53 -3
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextMessage.java +21 -5
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerService.java +79 -17
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/client/ForgeContentUpdateScreen.java +246 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentServerHandshakeMixin.java +28 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/ContentServerStatusMixin.java +29 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/XFEServerManagerMixinPlugin.java +4 -1
Added platform/shared/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ContentBehaviorRouting.java +19 -0
Added platform/shared/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ContentSyncRateLimiter.java +66 -0
Modified platform/shared/src/main/resources/xfeservermanager.mixins.json +3 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ContentBehaviorRoutingContractTest.java +64 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ContentBehaviorRoutingTest.java +125 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ContentConnectMixinContractTest.java +34 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ContentSyncMixinContractTest.java +37 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ContentSyncRateLimiterTest.java +57 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeContentSyncTest.java +89 -0
Modified platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextMessageTest.java +16 -0
Modified platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerServiceTest.java +62 -0
Added tools/minecraft-ui-preview.mjs +48 -0
Added web-ui/dev-preview/README.md +21 -0
Added web-ui/dev-preview/fixtures.ts +81 -0
Added web-ui/dev-preview/index.html +12 -0
Added web-ui/dev-preview/main.tsx +18 -0
Added web-ui/dev-preview/memory-api.ts +58 -0
Added web-ui/dev-preview/tsconfig.json +5 -0
Added web-ui/src/assets/mc-planks.svg +7 -0
Added web-ui/src/assets/mc-stone.svg +7 -0
Modified web-ui/src/components/app-shell.tsx +27 -31
Added web-ui/src/components/minecraft-icon.test.tsx +29 -0
Added web-ui/src/components/minecraft-icon.tsx +111 -0
Added web-ui/src/components/minecraft-theme.test.tsx +239 -0
Modified web-ui/src/components/rich-text-editor.test.tsx +135 -1
Modified web-ui/src/components/rich-text-editor.tsx +77 -15
Added web-ui/src/components/trigger-node-dialog.tsx +64 -0
Modified web-ui/src/components/ui.tsx +10 -1
Modified web-ui/src/generated/openapi.ts +12 -0
Modified web-ui/src/main.tsx +1 -0
Added web-ui/src/mc-theme.css +281 -0
Modified web-ui/src/pages/content.test.tsx +27 -0
Modified web-ui/src/pages/content.tsx +23 -5
Modified web-ui/src/pages/login.tsx +52 -2
Modified web-ui/src/pages/triggers.test.tsx +303 -1
Modified web-ui/src/pages/triggers.tsx +200 -61
Modified web-ui/src/styles.css +28 -0