Split jigsaw studio service

- Move world registration and shutdown quiescing into JigsawStudioRegistry
- Move save, export and close arbitration into JigsawStudioSaveLifecycle
- Move autosave scheduling, drains and undo into JigsawStudioAutosaveScheduler
- Move variant creation, duplication and deletion into JigsawStudioVariantEditor
- Move variant metadata and resize edits into JigsawStudioVariantProperties
- Move workcell capacity, labels and connector blocks into JigsawStudioWorkcellEditor
- Move graph mutation and live relayout into JigsawStudioGraphMutations
- Move dynamic graph evaluation into JigsawStudioEvaluator
- Move menu state, studio tools and deferred duplication into JigsawStudioToolbelt
- Move the studio world event handlers into JigsawStudioProtectionListener
- Move ownership and mutation guards into JigsawStudioProtection
- Move variant materialization and hydration into JigsawStudioMaterializer
- Move dirty marking into JigsawStudioDirtyTracker
- Move workcell capture scheduling into JigsawStudioCaptureScheduler
- Move chunk capture and connector aggregation into JigsawStudioCapture
- Move materialized and rendered chunk writing into JigsawStudioChunkWriter
- Move jigsaw marker NBT watching into JigsawStudioTileWatcher
- Move particle preview rendering into JigsawStudioVisualization
- Move player workcell context into JigsawStudioPlayerContext
- Point the studio service tests at the relocated collaborators
- Record the split studio sources in the Bukkit purity allowlist
This commit is contained in:
Brian Neumann-Fopiano committed 2026-09-08 06:20:54 -04:00
1 parent 8b9d1fb2fb
commit 2451c89cee
26 files changed
+9617 -8574

No files matched your search

+26
View File
@@ -62,11 +62,37 @@ art/arcane/iris/core/service/BoardSVC.java
art/arcane/iris/core/service/EntityRiseSVC.java
art/arcane/iris/core/service/ExternalDataSVC.java
art/arcane/iris/core/service/GlobalCacheSVC.java
art/arcane/iris/core/service/JigsawStudioAutosaveScheduler.java
art/arcane/iris/core/service/JigsawStudioCapture.java
art/arcane/iris/core/service/JigsawStudioCaptureScheduler.java
art/arcane/iris/core/service/JigsawStudioChunkWriter.java
art/arcane/iris/core/service/JigsawStudioDetailsMenu.java
art/arcane/iris/core/service/JigsawStudioDirtyTracker.java
art/arcane/iris/core/service/JigsawStudioGraphMutations.java
art/arcane/iris/core/service/JigsawStudioMainMenu.java
art/arcane/iris/core/service/JigsawStudioMarkerParser.java
art/arcane/iris/core/service/JigsawStudioMaterializer.java
art/arcane/iris/core/service/JigsawStudioMenuActions.java
art/arcane/iris/core/service/JigsawStudioMenuController.java
art/arcane/iris/core/service/JigsawStudioMenuFormat.java
art/arcane/iris/core/service/JigsawStudioPlayerContext.java
art/arcane/iris/core/service/JigsawStudioPreviewRenderer.java
art/arcane/iris/core/service/JigsawStudioProtection.java
art/arcane/iris/core/service/JigsawStudioProtectionListener.java
art/arcane/iris/core/service/JigsawStudioRegistry.java
art/arcane/iris/core/service/JigsawStudioSaveLifecycle.java
art/arcane/iris/core/service/JigsawStudioService.java
art/arcane/iris/core/service/JigsawStudioStructureMenu.java
art/arcane/iris/core/service/JigsawStudioTileWatcher.java
art/arcane/iris/core/service/JigsawStudioToolCodec.java
art/arcane/iris/core/service/JigsawStudioToolbelt.java
art/arcane/iris/core/service/JigsawStudioToolboxMenu.java
art/arcane/iris/core/service/JigsawStudioVariantEditor.java
art/arcane/iris/core/service/JigsawStudioVariantMenu.java
art/arcane/iris/core/service/JigsawStudioVariantProperties.java
art/arcane/iris/core/service/JigsawStudioVisualization.java
art/arcane/iris/core/service/JigsawStudioWorkcellEditor.java
art/arcane/iris/core/service/JigsawStudioWorkcellMenu.java
art/arcane/iris/core/service/MultiverseSVC.java
art/arcane/iris/core/service/ObjectSVC.java
art/arcane/iris/core/service/ObjectStudioSaveService.java