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

XFEServerManager

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

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

XFEstudio/XFEServerManager

引入触发器与自动化系统,支持富文本消息

本次提交实现 XFEServerManager 2.0.0 主要目标,前后端统一引入“触发器与自动化”系统,支持事件-条件-动作(ECA)模型,支持可视化与脚本双编辑,消息、定时任务、服务器事件自动化统一入口。命令策略支持多组热更新,安全配置支持运行时生效,维护计划与优雅关服增强。新增富文本消息编辑与校验,支持变量插值、点击/悬停事件、发送者自定义。Forge 1.20.1~1.21.1 适配 tickrate 控制与富文本事件。大量单元测试与文档覆盖触发器、策略、富文本、权限、兼容性等,极大提升自动化、消息、权限与安全能力。

5d1cdf2
XFE工作室室长 <mail@xfegzs.com>
提交于

代码差异

131 个文件 +15906 -493
Modified README.md +22 -5
Modified README.zh-CN.md +7 -2
Added build-tools/loopback-agent/MANIFEST.MF +2 -0
Added build-tools/loopback-agent/src/com/xfestudio/xfeservermanager/tooling/ForceTcpLoopbackAgent.java +46 -0
Modified common/api/src/main/java/com/xfestudio/xfeservermanager/api/policy/PolicyRule.java +29 -1
Modified common/core/src/main/java/com/xfestudio/xfeservermanager/core/player/PlayerInventoryService.java +9 -3
Modified common/core/src/main/java/com/xfestudio/xfeservermanager/core/policy/CommandPolicyEngine.java +1 -17
Modified common/core/src/main/java/com/xfestudio/xfeservermanager/core/policy/ConstraintEvaluator.java +11 -1
Deleted common/core/src/main/java/com/xfestudio/xfeservermanager/core/policy/OfflineModeCommandGuard.java +0 -48
Modified common/core/src/main/java/com/xfestudio/xfeservermanager/core/policy/PolicySnapshotFactory.java +36 -11
Modified common/core/src/main/java/com/xfestudio/xfeservermanager/core/policy/PolicyValidator.java +24 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerActionTree.java +149 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerCatalog.java +268 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerCommandConfiguration.java +91 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerDefinition.java +183 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerEvaluator.java +378 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerGroup.java +28 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerGroupNotFoundException.java +20 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerIntervalSchedule.java +144 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerLimitExceededException.java +23 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerNotFoundException.java +20 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerRevisionConflictException.java +39 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerScriptCompiler.java +201 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerTimeContext.java +112 -0
Added common/core/src/main/java/com/xfestudio/xfeservermanager/core/trigger/TriggerVariableCatalog.java +405 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/ServerManagerRuntime.java +29 -3
Added common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/config/RichTextMessageValidator.java +108 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/config/ServerConfiguration.java +24 -3
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/config/ServerConfigurationLoader.java +3 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/http/HttpApiServer.java +74 -33
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/http/ManagementGateway.java +5 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/persistence/SqliteEventStore.java +25 -14
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/security/Capability.java +2 -0
Modified common/infra/src/main/java/com/xfestudio/xfeservermanager/infra/security/Role.java +8 -3
Added common/infra/src/main/resources/db/migration/V007__triggers.sql +46 -0
Modified common/infra/src/main/resources/db/migration/index.txt +1 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/config/RichTextMessageValidatorTest.java +45 -0
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/config/ServerConfigurationLoaderTest.java +34 -1
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/http/HttpApiServerSecurityTest.java +23 -1
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/persistence/SqliteDatabaseTest.java +1 -1
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/persistence/SqliteEventStoreTest.java +38 -0
Modified common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/persistence/SqlitePolicyRepositoryTest.java +17 -0
Added common/infra/src/test/java/com/xfestudio/xfeservermanager/infra/persistence/TriggerActionJsonCompatibilityTest.java +45 -0
Modified common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/policy/AtomicPolicyRepositoryTest.java +41 -0
Modified common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/policy/CommandPolicyEngineTest.java +33 -6
Added common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/trigger/TriggerCommandConfigurationTest.java +72 -0
Added common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/trigger/TriggerEngineTest.java +489 -0
Added common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/trigger/TriggerIntervalScheduleTest.java +120 -0
Added common/testkit/src/test/java/com/xfestudio/xfeservermanager/core/trigger/TriggerVariableCatalogTest.java +138 -0
Modified docs/architecture.md +6 -1
Modified docs/building.md +3 -3
Modified docs/compatibility.md +1 -1
Modified docs/deployment.md +1 -1
Modified docs/implementation-status.md +5 -4
Modified docs/openapi.yaml +467 -21
Modified docs/security.md +7 -3
Added docs/triggers.md +180 -0
Modified gradle.properties +1 -1
Modified platform/forge-1.20.1/build.gradle +1 -1
Modified platform/forge-1.20.1/gradle.properties +1 -1
Added platform/forge-1.20.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTickRateBridge.java +36 -0
Modified platform/forge-1.20.6/build.gradle +1 -1
Modified platform/forge-1.20.6/gradle.properties +1 -1
Added platform/forge-1.20.6/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTickRateBridge.java +31 -0
Modified platform/forge-1.21.1/build.gradle +1 -1
Modified platform/forge-1.21.1/gradle.properties +1 -1
Added platform/forge-1.21.1/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTickRateBridge.java +31 -0
Modified platform/forge-1.21.11/build.gradle +1 -1
Modified platform/forge-1.21.11/gradle.properties +1 -1
Added platform/forge-1.21.11/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextEvents.java +28 -0
Added platform/forge-1.21.11/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTickRateBridge.java +31 -0
Modified platform/forge-1.21.11/src/main/java/com/xfestudio/xfeservermanager/platform/forge/ModernForgeEvents.java +347 -12
Modified platform/shared/forge-common.gradle +13 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeCommandAdapter.java +12 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeCommands.java +95 -35
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeGovernanceService.java +153 -66
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeLocalization.java +95 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeManagementRuntime.java +53 -1
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextMessage.java +250 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerCommandRegistry.java +211 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerContexts.java +92 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/LegacyTickRateController.java +35 -0
Modified platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/BaseContainerBlockEntityMixin.java +8 -8
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/LegacyMinecraftServerTickRateMixin.java +20 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/LegacyServerFunctionPauseMixin.java +17 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/LegacyServerLevelPauseMixin.java +19 -0
Added platform/shared/src/forge-common/java/com/xfestudio/xfeservermanager/platform/forge/mixin/XFEServerManagerMixinPlugin.java +48 -0
Added platform/shared/src/forge-legacy/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextEvents.java +28 -0
Modified platform/shared/src/forge-legacy/java/com/xfestudio/xfeservermanager/platform/forge/LegacyForgeEvents.java +344 -11
Modified platform/shared/src/main/resources/META-INF/mods.toml +3 -0
Modified platform/shared/src/main/resources/assets/xfeservermanager/lang/en_us.json +1 -2
Modified platform/shared/src/main/resources/assets/xfeservermanager/lang/zh_cn.json +1 -1
Modified platform/shared/src/main/resources/xfeservermanager.mixins.json +5 -1
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeGovernanceServiceTest.java +19 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeLocalizationTest.java +27 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeRichTextMessageTest.java +127 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerCommandRegistryTest.java +136 -0
Added platform/shared/src/test/java/com/xfestudio/xfeservermanager/platform/forge/ForgeTriggerServiceTest.java +316 -0
Modified scripts/build-all.ps1 +121 -10
Modified web-ui/src/app.tsx +2 -0
Modified web-ui/src/components/app-shell.tsx +5 -2
Added web-ui/src/components/modal-portal.tsx +8 -0
Added web-ui/src/components/policy-rule-editor.tsx +205 -0
Added web-ui/src/components/rich-text-editor.test.tsx +408 -0
Added web-ui/src/components/rich-text-variables.ts +86 -0
Added web-ui/src/components/ui.test.tsx +38 -0
Modified web-ui/src/components/ui.tsx +57 -8
Modified web-ui/src/context/server-context.tsx +3 -2
Modified web-ui/src/lib/api.test.ts +122 -1
Modified web-ui/src/lib/api.ts +119 -11
Modified web-ui/src/lib/i18n.tsx +58 -2
Modified web-ui/src/lib/permissions.ts +3 -0
Modified web-ui/src/pages/maintenance.tsx +18 -6
Added web-ui/src/pages/messages.test.tsx +245 -0
Added web-ui/src/pages/messages.tsx +142 -0
Modified web-ui/src/pages/players-preview.test.tsx +1 -0
Modified web-ui/src/pages/players.tsx +3 -2
Modified web-ui/src/pages/policies-editor.test.tsx +25 -13
Modified web-ui/src/pages/policies.tsx +40 -17
Modified web-ui/src/pages/settings-accounts.test.tsx +59 -3
Modified web-ui/src/pages/settings-auth.test.tsx +1 -1
Modified web-ui/src/pages/settings.tsx +65 -43
Modified web-ui/src/styles.css +272 -7
Modified web-ui/src/types.ts +154 -1