From a2cb6b62585234a8aedd1ff6374d2fe59ba6d85d Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Thu, 23 Nov 2023 16:04:02 +0100 Subject: [PATCH] move integrated assets managers to own holder --- .../kotlin/de/bixilon/minosoft/MinosoftSIT.kt | 4 +++- src/main/java/de/bixilon/minosoft/Minosoft.kt | 13 ++++++------ .../bixilon/minosoft/assets/AssetsLoader.kt | 5 ++--- .../minosoft/assets/IntegratedAssets.kt | 21 +++++++++++++++++++ .../minosoft/assets/meta/MinosoftMeta.kt | 4 ++-- .../version/AssetsVersionProperties.kt | 4 ++-- .../data/entities/event/EntityEvents.kt | 4 ++-- .../registries/fallback/FallbackRegistries.kt | 6 +++--- .../registries/fallback/tags/FallbackTags.kt | 4 ++-- .../datafixer/rls/ResourceLocationFixer.kt | 4 ++-- .../minosoft/gui/eros/card/CardFactory.kt | 4 ++-- .../gui/eros/util/JavaFXInitializer.kt | 4 ++-- .../minosoft/gui/eros/util/JavaFXUtil.kt | 12 ++++++----- .../properties/MinosoftPropertiesLoader.kt | 4 ++-- .../protocol/versions/VersionLoader.kt | 4 ++-- .../de/bixilon/minosoft/util/DesktopUtil.kt | 4 ++-- .../minosoft/util/url/ResourceURLHandler.kt | 4 ++-- .../minosoft/util/yggdrasil/YggdrasilUtil.kt | 4 ++-- 18 files changed, 67 insertions(+), 42 deletions(-) create mode 100644 src/main/java/de/bixilon/minosoft/assets/IntegratedAssets.kt diff --git a/src/integration-test/kotlin/de/bixilon/minosoft/MinosoftSIT.kt b/src/integration-test/kotlin/de/bixilon/minosoft/MinosoftSIT.kt index aefccd91e..c63e483ab 100644 --- a/src/integration-test/kotlin/de/bixilon/minosoft/MinosoftSIT.kt +++ b/src/integration-test/kotlin/de/bixilon/minosoft/MinosoftSIT.kt @@ -15,6 +15,7 @@ package de.bixilon.minosoft import de.bixilon.kutil.latch.SimpleLatch import de.bixilon.kutil.reflection.ReflectionUtil.forceSet +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.meta.MinosoftMeta import de.bixilon.minosoft.assets.properties.version.AssetsVersionProperties import de.bixilon.minosoft.data.registries.fallback.FallbackRegistries @@ -78,7 +79,8 @@ internal object MinosoftSIT { } fun initAssetsManager() { - Minosoft.MINOSOFT_ASSETS_MANAGER.load() + IntegratedAssets.DEFAULT.load() + IntegratedAssets.OVERRIDE.load() } fun loadVersionsJson() { diff --git a/src/main/java/de/bixilon/minosoft/Minosoft.kt b/src/main/java/de/bixilon/minosoft/Minosoft.kt index bd7800c74..397a48e58 100644 --- a/src/main/java/de/bixilon/minosoft/Minosoft.kt +++ b/src/main/java/de/bixilon/minosoft/Minosoft.kt @@ -30,7 +30,7 @@ import de.bixilon.kutil.shutdown.AbstractShutdownReason import de.bixilon.kutil.shutdown.ShutdownManager import de.bixilon.kutil.time.TimeUtil.nanos import de.bixilon.kutil.unit.UnitFormatter.formatNanos -import de.bixilon.minosoft.assets.file.ResourcesAssetsUtil +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.meta.MinosoftMeta import de.bixilon.minosoft.assets.properties.version.AssetsVersionProperties import de.bixilon.minosoft.config.StaticConfiguration @@ -73,21 +73,22 @@ import de.bixilon.minosoft.util.yggdrasil.YggdrasilUtil object Minosoft { - val MINOSOFT_ASSETS_MANAGER = ResourcesAssetsUtil.create(Minosoft::class.java, canUnload = false) - val OVERRIDE_ASSETS_MANAGER = ResourcesAssetsUtil.create(Minosoft::class.java, canUnload = false, prefix = "assets_override") val LANGUAGE_MANAGER = MultiLanguageManager() val BOOT_LATCH = CallbackLatch(1) private fun preBoot(args: Array) { + val assets = SimpleLatch(1) + DefaultThreadPool += ForcePooledRunnable { IntegratedAssets.DEFAULT.load(); assets.dec() } DefaultThreadPool += ForcePooledRunnable { Jackson.init(); MinosoftPropertiesLoader.init() } DefaultThreadPool += ForcePooledRunnable { KUtil.initBootClasses() } CommandLineArguments.parse(args) Log.log(LogMessageType.OTHER, LogLevels.INFO) { "Starting minosoft..." } val latch = SimpleLatch(2) - DefaultThreadPool += ForcePooledRunnable { MINOSOFT_ASSETS_MANAGER.load(); MinosoftPropertiesLoader.load(); latch.dec() } DefaultThreadPool += ForcePooledRunnable { ModLoader.initModLoading(); latch.dec() } + assets.await() + DefaultThreadPool += ForcePooledRunnable { MinosoftPropertiesLoader.load(); latch.dec() } KUtil.init() @@ -122,7 +123,7 @@ object Minosoft { } taskWorker += WorkerTask(identifier = BootTasks.YGGDRASIL, executor = { YggdrasilUtil.load() }) - taskWorker += WorkerTask(identifier = BootTasks.ASSETS_OVERRIDE, executor = { OVERRIDE_ASSETS_MANAGER.load(it) }) + taskWorker += WorkerTask(identifier = BootTasks.ASSETS_OVERRIDE, executor = { IntegratedAssets.OVERRIDE.load(it) }) taskWorker += WorkerTask(identifier = BootTasks.MODS, executor = { ModLoader.load(LoadingPhases.BOOT, it) }) taskWorker += WorkerTask(identifier = BootTasks.DATA_FIXER, executor = { DataFixer.load() }) taskWorker += WorkerTask(identifier = BootTasks.CLI, priority = ThreadPool.LOW, executor = CLI::startThread) @@ -187,7 +188,7 @@ object Minosoft { val language = ErosProfileManager.selected.general.language ErosProfileManager.selected.general::language.observe(this, true) { Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Loading language files (${language})" } - LANGUAGE_MANAGER.translators[Namespaces.MINOSOFT] = LanguageUtil.load(it, null, MINOSOFT_ASSETS_MANAGER, minosoft("language/")) + LANGUAGE_MANAGER.translators[Namespaces.MINOSOFT] = LanguageUtil.load(it, null, IntegratedAssets.DEFAULT, minosoft("language/")) Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Language files loaded!" } } } diff --git a/src/main/java/de/bixilon/minosoft/assets/AssetsLoader.kt b/src/main/java/de/bixilon/minosoft/assets/AssetsLoader.kt index 74c011505..22aab5357 100644 --- a/src/main/java/de/bixilon/minosoft/assets/AssetsLoader.kt +++ b/src/main/java/de/bixilon/minosoft/assets/AssetsLoader.kt @@ -14,7 +14,6 @@ package de.bixilon.minosoft.assets import de.bixilon.kutil.latch.AbstractLatch -import de.bixilon.minosoft.Minosoft import de.bixilon.minosoft.assets.connection.ConnectionAssetsManager import de.bixilon.minosoft.assets.minecraft.JarAssetsManager import de.bixilon.minosoft.assets.minecraft.MinecraftPackFormat.packFormat @@ -50,7 +49,7 @@ object AssetsLoader { val assetsManager = ConnectionAssetsManager(properties) - assetsManager += Minosoft.OVERRIDE_ASSETS_MANAGER + assetsManager += IntegratedAssets.OVERRIDE assetsManager.addPacks(profile, latch) @@ -60,7 +59,7 @@ object AssetsLoader { if (!profile.assets.disableJarAssets) { assetsManager += JarAssetsManager(property.jarAssetsHash, property.clientJarHash, profile, version, property.jarAssetsTarBytes ?: JarAssetsManager.DEFAULT_TAR_BYTES) } - assetsManager += Minosoft.MINOSOFT_ASSETS_MANAGER + assetsManager += IntegratedAssets.DEFAULT return assetsManager } diff --git a/src/main/java/de/bixilon/minosoft/assets/IntegratedAssets.kt b/src/main/java/de/bixilon/minosoft/assets/IntegratedAssets.kt new file mode 100644 index 000000000..86a3b38e4 --- /dev/null +++ b/src/main/java/de/bixilon/minosoft/assets/IntegratedAssets.kt @@ -0,0 +1,21 @@ +/* + * Minosoft + * Copyright (C) 2020-2023 Moritz Zwerger + * + * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with this program. If not, see . + * + * This software is not affiliated with Mojang AB, the original developer of Minecraft. + */ + +package de.bixilon.minosoft.assets + +import de.bixilon.minosoft.assets.file.ResourcesAssetsUtil + +object IntegratedAssets { + val DEFAULT = ResourcesAssetsUtil.create(IntegratedAssets::class.java, canUnload = false) + val OVERRIDE = ResourcesAssetsUtil.create(IntegratedAssets::class.java, canUnload = false, prefix = "assets_override") +} diff --git a/src/main/java/de/bixilon/minosoft/assets/meta/MinosoftMeta.kt b/src/main/java/de/bixilon/minosoft/assets/meta/MinosoftMeta.kt index 01f158ac2..0d293141b 100644 --- a/src/main/java/de/bixilon/minosoft/assets/meta/MinosoftMeta.kt +++ b/src/main/java/de/bixilon/minosoft/assets/meta/MinosoftMeta.kt @@ -19,7 +19,7 @@ import de.bixilon.kutil.json.JsonObject import de.bixilon.kutil.string.StringUtil.formatPlaceholder import de.bixilon.kutil.url.URLUtil.toURL import de.bixilon.mbf.MBFBinaryReader -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.FileAssetsTypes import de.bixilon.minosoft.assets.util.FileAssetsUtil import de.bixilon.minosoft.assets.util.HashTypes @@ -37,7 +37,7 @@ object MinosoftMeta { fun load() { - this.root = Minosoft.MINOSOFT_ASSETS_MANAGER[INDEX].readJson() + this.root = IntegratedAssets.DEFAULT[INDEX].readJson() } private fun ByteArray.load(): JsonObject { diff --git a/src/main/java/de/bixilon/minosoft/assets/properties/version/AssetsVersionProperties.kt b/src/main/java/de/bixilon/minosoft/assets/properties/version/AssetsVersionProperties.kt index 19fd3058c..91057ddd0 100644 --- a/src/main/java/de/bixilon/minosoft/assets/properties/version/AssetsVersionProperties.kt +++ b/src/main/java/de/bixilon/minosoft/assets/properties/version/AssetsVersionProperties.kt @@ -14,7 +14,7 @@ package de.bixilon.minosoft.assets.properties.version import de.bixilon.kutil.latch.AbstractLatch -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.protocol.versions.Version import de.bixilon.minosoft.protocol.versions.Versions @@ -32,7 +32,7 @@ object AssetsVersionProperties { throw IllegalStateException("Already loaded!") } Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Loading assets properties..." } - val assetsProperties: Map = Minosoft.MINOSOFT_ASSETS_MANAGER[ASSETS_PROPERTIES_FILE].readJson() + val assetsProperties: Map = IntegratedAssets.DEFAULT[ASSETS_PROPERTIES_FILE].readJson() for ((versionName, property) in assetsProperties) { PROPERTIES[Versions[versionName] ?: continue] = property } diff --git a/src/main/java/de/bixilon/minosoft/data/entities/event/EntityEvents.kt b/src/main/java/de/bixilon/minosoft/data/entities/event/EntityEvents.kt index ae64af55a..0e391dd5c 100644 --- a/src/main/java/de/bixilon/minosoft/data/entities/event/EntityEvents.kt +++ b/src/main/java/de/bixilon/minosoft/data/entities/event/EntityEvents.kt @@ -16,7 +16,7 @@ package de.bixilon.minosoft.data.entities.event import de.bixilon.kutil.cast.CollectionCast.asAnyMap import de.bixilon.kutil.json.JsonUtil.asJsonObject import de.bixilon.kutil.primitive.IntUtil.toInt -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.data.entities.entities.Entity import de.bixilon.minosoft.data.entities.event.events.damage.* @@ -58,7 +58,7 @@ object EntityEvents : DefaultFactory>( } fun load() { - val json: Map = Minosoft.MINOSOFT_ASSETS_MANAGER[FILE].readJson() + val json: Map = IntegratedAssets.DEFAULT[FILE].readJson() for ((name, data) in json) { val clazz = DefaultEntityFactories.ABSTRACT_ENTITY_DATA_CLASSES[name]?.java ?: DefaultEntityFactories[name]?.javaClass // TODO: This is the companion class if (clazz == null) { diff --git a/src/main/java/de/bixilon/minosoft/data/registries/fallback/FallbackRegistries.kt b/src/main/java/de/bixilon/minosoft/data/registries/fallback/FallbackRegistries.kt index 5cbca6338..f8abbf048 100644 --- a/src/main/java/de/bixilon/minosoft/data/registries/fallback/FallbackRegistries.kt +++ b/src/main/java/de/bixilon/minosoft/data/registries/fallback/FallbackRegistries.kt @@ -14,7 +14,7 @@ package de.bixilon.minosoft.data.registries.fallback import de.bixilon.kutil.json.JsonUtil.asJsonObject -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.data.container.equipment.EquipmentSlots import de.bixilon.minosoft.data.entities.EntityAnimations @@ -76,7 +76,7 @@ object FallbackRegistries { check(!initialized) { "Already initialized!" } Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Loading default registries..." } - val enumJson: Map = Minosoft.MINOSOFT_ASSETS_MANAGER[ENUM_RESOURCE_LOCATION].readJson() + val enumJson: Map = IntegratedAssets.DEFAULT[ENUM_RESOURCE_LOCATION].readJson() EQUIPMENT_SLOTS_REGISTRY.initialize(enumJson[ResourceLocation.of("equipment_slots")].asJsonObject()) HAND_EQUIPMENT_SLOTS_REGISTRY.initialize(enumJson[ResourceLocation.of("hand_equipment_slots")].asJsonObject()) @@ -91,7 +91,7 @@ object FallbackRegistries { ENTITY_ACTIONS_REGISTRY.initialize(enumJson[ResourceLocation.of("entity_actions")].asJsonObject()) - val registriesJson: Map = Minosoft.MINOSOFT_ASSETS_MANAGER[REGISTRIES_RESOURCE_LOCATION].readJson() + val registriesJson: Map = IntegratedAssets.DEFAULT[REGISTRIES_RESOURCE_LOCATION].readJson() DEFAULT_PLUGIN_CHANNELS_REGISTRY.initialize(registriesJson[ResourceLocation.of("default_channels")].asJsonObject(), PluginChannel) diff --git a/src/main/java/de/bixilon/minosoft/data/registries/fallback/tags/FallbackTags.kt b/src/main/java/de/bixilon/minosoft/data/registries/fallback/tags/FallbackTags.kt index 44320a9c5..3af023ebb 100644 --- a/src/main/java/de/bixilon/minosoft/data/registries/fallback/tags/FallbackTags.kt +++ b/src/main/java/de/bixilon/minosoft/data/registries/fallback/tags/FallbackTags.kt @@ -15,7 +15,7 @@ package de.bixilon.minosoft.data.registries.fallback.tags import de.bixilon.kutil.cast.CastUtil.unsafeCast import de.bixilon.kutil.cast.CollectionCast.asAnyCollection -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJsonObject import de.bixilon.minosoft.data.registries.identified.ResourceLocation import de.bixilon.minosoft.data.registries.item.items.tool.ToolLevels @@ -40,7 +40,7 @@ object FallbackTags { private val tags: MutableMap>> = mutableMapOf() private fun read(type: ResourceLocation, name: ResourceLocation): Set { - val content = Minosoft.MINOSOFT_ASSETS_MANAGER[ResourceLocation(name.namespace, "tags/${type.path}/${name.path}.json")].readJsonObject()["values"].asAnyCollection() + val content = IntegratedAssets.DEFAULT[ResourceLocation(name.namespace, "tags/${type.path}/${name.path}.json")].readJsonObject()["values"].asAnyCollection() val set: MutableSet = ObjectOpenHashSet() for (entry in content) { diff --git a/src/main/java/de/bixilon/minosoft/datafixer/rls/ResourceLocationFixer.kt b/src/main/java/de/bixilon/minosoft/datafixer/rls/ResourceLocationFixer.kt index 33a45a7c7..c60872770 100644 --- a/src/main/java/de/bixilon/minosoft/datafixer/rls/ResourceLocationFixer.kt +++ b/src/main/java/de/bixilon/minosoft/datafixer/rls/ResourceLocationFixer.kt @@ -15,7 +15,7 @@ package de.bixilon.minosoft.datafixer.rls import de.bixilon.kutil.cast.CastUtil.unsafeNull import de.bixilon.kutil.reflection.ReflectionUtil.forceSet -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.data.registries.identified.ResourceLocation import de.bixilon.minosoft.datafixer.Fixer @@ -25,7 +25,7 @@ abstract class ResourceLocationFixer(private val path: ResourceLocation) : Fixer override fun load() { - this::renames.forceSet(Minosoft.MINOSOFT_ASSETS_MANAGER[this.path.fixer()].readJson()) + this::renames.forceSet(IntegratedAssets.DEFAULT[this.path.fixer()].readJson()) } open fun fix(resourceLocation: ResourceLocation): ResourceLocation { diff --git a/src/main/java/de/bixilon/minosoft/gui/eros/card/CardFactory.kt b/src/main/java/de/bixilon/minosoft/gui/eros/card/CardFactory.kt index f65b10ba3..4aca4c5fd 100644 --- a/src/main/java/de/bixilon/minosoft/gui/eros/card/CardFactory.kt +++ b/src/main/java/de/bixilon/minosoft/gui/eros/card/CardFactory.kt @@ -13,7 +13,7 @@ package de.bixilon.minosoft.gui.eros.card -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.data.registries.identified.ResourceLocation import de.bixilon.minosoft.gui.eros.util.JavaFXUtil import javafx.scene.control.ListCell @@ -24,7 +24,7 @@ interface CardFactory> { fun build(): T { val loader = JavaFXUtil.createLoader() - loader.load(Minosoft.MINOSOFT_ASSETS_MANAGER[LAYOUT]) + loader.load(IntegratedAssets.DEFAULT[LAYOUT]) return loader.getController() } diff --git a/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXInitializer.kt b/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXInitializer.kt index e0313fdae..5d4aa5849 100644 --- a/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXInitializer.kt +++ b/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXInitializer.kt @@ -19,7 +19,7 @@ import de.bixilon.kutil.concurrent.worker.unconditional.UnconditionalWorker import de.bixilon.kutil.exception.ExceptionUtil.catchAll import de.bixilon.kutil.latch.SimpleLatch import de.bixilon.kutil.shutdown.ShutdownManager -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.gui.eros.crash.ErosCrashReport.Companion.crash import de.bixilon.minosoft.util.DesktopUtil import de.bixilon.minosoft.util.logging.Log @@ -41,7 +41,7 @@ class JavaFXInitializer internal constructor() : Application() { DesktopUtil.initialize() val worker = UnconditionalWorker(autoWork = true) - worker += { JavaFXUtil.MINOSOFT_LOGO = Image(Minosoft.MINOSOFT_ASSETS_MANAGER[DesktopUtil.ICON]) } + worker += { JavaFXUtil.MINOSOFT_LOGO = Image(IntegratedAssets.DEFAULT[DesktopUtil.ICON]) } worker.work(LATCH) Log.log(LogMessageType.JAVAFX, LogLevels.VERBOSE) { "Initialized JavaFX Toolkit!" } diff --git a/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXUtil.kt b/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXUtil.kt index 4b35aec2a..0942dd969 100644 --- a/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXUtil.kt +++ b/src/main/java/de/bixilon/minosoft/gui/eros/util/JavaFXUtil.kt @@ -21,7 +21,9 @@ import de.bixilon.kutil.reflection.ReflectionUtil.forceSet import de.bixilon.kutil.reflection.ReflectionUtil.jvmField import de.bixilon.kutil.url.URLUtil.toURL import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager +import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.data.registries.identified.ResourceLocation import de.bixilon.minosoft.gui.eros.controller.EmbeddedJavaFXController import de.bixilon.minosoft.gui.eros.controller.JavaFXController @@ -59,10 +61,10 @@ object JavaFXUtil { lateinit var JAVA_FX_THREAD: Thread lateinit var MINOSOFT_LOGO: Image lateinit var HOST_SERVICES: HostServices - val BIXILON_LOGO: Group? by lazy { catchAll { SvgLoader().loadSvg(Minosoft.MINOSOFT_ASSETS_MANAGER["minosoft:textures/icons/bixilon_logo.svg".toResourceLocation()]) } } + val BIXILON_LOGO: Group? by lazy { catchAll { SvgLoader().loadSvg(IntegratedAssets.DEFAULT[minosoft("textures/icons/bixilon_logo.svg")]) } } private var watchingTheme = false - val THEME_ASSETS_MANAGER = Minosoft.MINOSOFT_ASSETS_MANAGER + val THEME_ASSETS_MANAGER = IntegratedAssets.DEFAULT private fun startThemeWatcher() { if (watchingTheme) { @@ -109,7 +111,7 @@ object JavaFXUtil { startThemeWatcher() val fxmlLoader = createLoader() controller?.let { fxmlLoader.setController(it) } - val parent: Parent = fxmlLoader.load(Minosoft.MINOSOFT_ASSETS_MANAGER[layout]) + val parent: Parent = fxmlLoader.load(IntegratedAssets.DEFAULT[layout]) parent.registerFreezeDumpKey() return loadController(title, fxmlLoader, parent, modality) } @@ -119,7 +121,7 @@ object JavaFXUtil { startThemeWatcher() val fxmlLoader = createLoader() controller?.let { fxmlLoader.setController(it) } - val parent: Parent = fxmlLoader.load(Minosoft.MINOSOFT_ASSETS_MANAGER[layout]) + val parent: Parent = fxmlLoader.load(IntegratedAssets.DEFAULT[layout]) parent.registerFreezeDumpKey() if (callback == null) { @@ -133,7 +135,7 @@ object JavaFXUtil { fun > loadEmbeddedController(layout: ResourceLocation, controller: T? = null): T { val fxmlLoader = createLoader() controller?.let { fxmlLoader.setController(it) } - val pane = fxmlLoader.load(Minosoft.MINOSOFT_ASSETS_MANAGER[layout]) + val pane = fxmlLoader.load(IntegratedAssets.DEFAULT[layout]) val controller = fxmlLoader.getController() diff --git a/src/main/java/de/bixilon/minosoft/properties/MinosoftPropertiesLoader.kt b/src/main/java/de/bixilon/minosoft/properties/MinosoftPropertiesLoader.kt index adbf37f7d..b002dd45f 100644 --- a/src/main/java/de/bixilon/minosoft/properties/MinosoftPropertiesLoader.kt +++ b/src/main/java/de/bixilon/minosoft/properties/MinosoftPropertiesLoader.kt @@ -13,7 +13,7 @@ package de.bixilon.minosoft.properties -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.properties.general.GeneralP @@ -29,7 +29,7 @@ object MinosoftPropertiesLoader { val reader = Jackson.MAPPER.readerFor(type) fun load() { - val properties = Minosoft.MINOSOFT_ASSETS_MANAGER.getOrNull(minosoft("version.json"))?.readJson(reader = reader) + val properties = IntegratedAssets.DEFAULT.getOrNull(minosoft("version.json"))?.readJson(reader = reader) MinosoftProperties = if (properties == null) { Log.log(LogMessageType.OTHER, LogLevels.FATAL) { "Can not load version.json! Did you compile with gradle?" } MinosoftP(GeneralP("unknown", false), null) diff --git a/src/main/java/de/bixilon/minosoft/protocol/versions/VersionLoader.kt b/src/main/java/de/bixilon/minosoft/protocol/versions/VersionLoader.kt index b78a3e571..79f61d221 100644 --- a/src/main/java/de/bixilon/minosoft/protocol/versions/VersionLoader.kt +++ b/src/main/java/de/bixilon/minosoft/protocol/versions/VersionLoader.kt @@ -17,7 +17,7 @@ import de.bixilon.kutil.cast.CastUtil.unsafeCast import de.bixilon.kutil.json.JsonObject import de.bixilon.kutil.latch.AbstractLatch import de.bixilon.kutil.primitive.IntUtil.toInt -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.assets.util.InputStreamUtil.readJson import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.protocol.packets.registry.DefaultPackets @@ -86,7 +86,7 @@ object VersionLoader { fun load(latch: AbstractLatch?) { Log.log(LogMessageType.LOADING, LogLevels.VERBOSE) { "Loading versions..." } - val index: VersionIndex = Minosoft.MINOSOFT_ASSETS_MANAGER[INDEX].readJson() + val index: VersionIndex = IntegratedAssets.DEFAULT[INDEX].readJson() for ((versionId, data) in index) { load(versionId, index, data) diff --git a/src/main/java/de/bixilon/minosoft/util/DesktopUtil.kt b/src/main/java/de/bixilon/minosoft/util/DesktopUtil.kt index 493d35275..9048ab731 100644 --- a/src/main/java/de/bixilon/minosoft/util/DesktopUtil.kt +++ b/src/main/java/de/bixilon/minosoft/util/DesktopUtil.kt @@ -13,7 +13,7 @@ package de.bixilon.minosoft.util -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.gui.eros.util.JavaFXUtil import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture @@ -66,7 +66,7 @@ object DesktopUtil { } private fun Taskbar.setDockIcon() { - iconImage = Toolkit.getDefaultToolkit().createImage(Minosoft.MINOSOFT_ASSETS_MANAGER[ICON].readAllBytes()) + iconImage = Toolkit.getDefaultToolkit().createImage(IntegratedAssets.DEFAULT[ICON].readAllBytes()) } private fun Taskbar.initialize() { diff --git a/src/main/java/de/bixilon/minosoft/util/url/ResourceURLHandler.kt b/src/main/java/de/bixilon/minosoft/util/url/ResourceURLHandler.kt index f12e1de9f..018e2ec6d 100644 --- a/src/main/java/de/bixilon/minosoft/util/url/ResourceURLHandler.kt +++ b/src/main/java/de/bixilon/minosoft/util/url/ResourceURLHandler.kt @@ -13,7 +13,7 @@ package de.bixilon.minosoft.util.url -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.data.registries.identified.ResourceLocation import java.io.InputStream import java.net.URL @@ -33,7 +33,7 @@ object ResourceURLHandler : URLStreamHandler() { } override fun getInputStream(): InputStream { - return Minosoft.MINOSOFT_ASSETS_MANAGER[ResourceLocation.of(url.path)] + return IntegratedAssets.DEFAULT[ResourceLocation.of(url.path)] } } } diff --git a/src/main/java/de/bixilon/minosoft/util/yggdrasil/YggdrasilUtil.kt b/src/main/java/de/bixilon/minosoft/util/yggdrasil/YggdrasilUtil.kt index 28a5152ba..9c9fe8756 100644 --- a/src/main/java/de/bixilon/minosoft/util/yggdrasil/YggdrasilUtil.kt +++ b/src/main/java/de/bixilon/minosoft/util/yggdrasil/YggdrasilUtil.kt @@ -13,7 +13,7 @@ package de.bixilon.minosoft.util.yggdrasil -import de.bixilon.minosoft.Minosoft +import de.bixilon.minosoft.assets.IntegratedAssets import de.bixilon.minosoft.data.registries.identified.Namespaces.mojang import de.bixilon.minosoft.terminal.RunConfiguration import de.bixilon.minosoft.util.logging.Log @@ -36,7 +36,7 @@ object YggdrasilUtil { return } check(!this::PUBLIC_KEY.isInitialized) { "Already loaded!" } - val spec = X509EncodedKeySpec(Minosoft.MINOSOFT_ASSETS_MANAGER[mojang("yggdrasil/pubkey.der")].readAllBytes()) + val spec = X509EncodedKeySpec(IntegratedAssets.DEFAULT[mojang("yggdrasil/pubkey.der")].readAllBytes()) val keyFactory: KeyFactory = KeyFactory.getInstance("RSA") PUBLIC_KEY = keyFactory.generatePublic(spec) }