From dd259c4d8f054511ca4163b7104039b2f821d366 Mon Sep 17 00:00:00 2001 From: solonovamax Date: Sun, 21 Nov 2021 19:18:00 -0500 Subject: [PATCH] Make logging actually work Signed-off-by: solonovamax --- .../com/dfsek/terra/AbstractPlatform.java | 70 +++++++++---------- .../dfsek/terra/config/PluginConfigImpl.java | 1 - .../com/dfsek/terra/config/lang/LangUtil.java | 1 - .../event/FunctionalEventHandlerImpl.java | 4 +- .../terra/addon/BootstrapAddonLoader.java | 19 ++--- platforms/bukkit/build.gradle.kts | 3 +- platforms/fabric/build.gradle.kts | 3 +- .../dfsek/terra/fabric/FabricEntryPoint.java | 6 -- .../com/dfsek/terra/fabric/PlatformImpl.java | 5 +- .../FabricChunkGeneratorWrapper.java | 55 ++++++++------- .../terra/fabric/mixin/ServerWorldMixin.java | 1 + platforms/sponge/build.gradle.kts | 3 +- 12 files changed, 85 insertions(+), 86 deletions(-) diff --git a/common/implementation/src/main/java/com/dfsek/terra/AbstractPlatform.java b/common/implementation/src/main/java/com/dfsek/terra/AbstractPlatform.java index 644939da6..83360fd03 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/AbstractPlatform.java +++ b/common/implementation/src/main/java/com/dfsek/terra/AbstractPlatform.java @@ -94,45 +94,18 @@ public abstract class AbstractPlatform implements Platform { private final Registry lockedAddonRegistry = new LockedRegistryImpl<>(addonRegistry); - @Override - public void register(TypeRegistry registry) { - loaders.register(registry); + public ConfigRegistry getRawConfigRegistry() { + return configRegistry; } - @Override - public PluginConfig getTerraConfig() { - return config; - } - - @Override - public Language getLanguage() { - return LangUtil.getLanguage(); - } - - @Override - public CheckedRegistry getConfigRegistry() { - return checkedConfigRegistry; - } - - @Override - public Registry getAddons() { - return lockedAddonRegistry; - } - - @Override - public EventManager getEventManager() { - return eventManager; + public CommandManager getManager() { + return manager; } protected Optional platformAddon() { return Optional.empty(); } - @Override - public Profiler getProfiler() { - return profiler; - } - protected void load() { if(LOADED.get()) { throw new IllegalStateException( @@ -257,11 +230,38 @@ public abstract class AbstractPlatform implements Platform { return Optional.empty(); } - public ConfigRegistry getRawConfigRegistry() { - return configRegistry; + @Override + public void register(TypeRegistry registry) { + loaders.register(registry); } - public CommandManager getManager() { - return manager; + @Override + public PluginConfig getTerraConfig() { + return config; + } + + @Override + public Language getLanguage() { + return LangUtil.getLanguage(); + } + + @Override + public CheckedRegistry getConfigRegistry() { + return checkedConfigRegistry; + } + + @Override + public Registry getAddons() { + return lockedAddonRegistry; + } + + @Override + public EventManager getEventManager() { + return eventManager; + } + + @Override + public Profiler getProfiler() { + return profiler; } } diff --git a/common/implementation/src/main/java/com/dfsek/terra/config/PluginConfigImpl.java b/common/implementation/src/main/java/com/dfsek/terra/config/PluginConfigImpl.java index b482d8af0..633b1a741 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/config/PluginConfigImpl.java +++ b/common/implementation/src/main/java/com/dfsek/terra/config/PluginConfigImpl.java @@ -33,7 +33,6 @@ import java.io.UncheckedIOException; import java.time.Duration; import com.dfsek.terra.api.Platform; -import com.dfsek.terra.api.util.Logger; @SuppressWarnings("FieldMayBeFinal") diff --git a/common/implementation/src/main/java/com/dfsek/terra/config/lang/LangUtil.java b/common/implementation/src/main/java/com/dfsek/terra/config/lang/LangUtil.java index 6e4a0850d..ae94dc3d8 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/config/lang/LangUtil.java +++ b/common/implementation/src/main/java/com/dfsek/terra/config/lang/LangUtil.java @@ -29,7 +29,6 @@ import java.util.Objects; import com.dfsek.terra.api.Platform; import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.lang.Language; -import com.dfsek.terra.api.util.Logger; public final class LangUtil { diff --git a/common/implementation/src/main/java/com/dfsek/terra/event/FunctionalEventHandlerImpl.java b/common/implementation/src/main/java/com/dfsek/terra/event/FunctionalEventHandlerImpl.java index 5d7af7aa9..8df0bc939 100644 --- a/common/implementation/src/main/java/com/dfsek/terra/event/FunctionalEventHandlerImpl.java +++ b/common/implementation/src/main/java/com/dfsek/terra/event/FunctionalEventHandlerImpl.java @@ -65,8 +65,8 @@ public class FunctionalEventHandlerImpl implements FunctionalEventHandler { if(context.isFailThrough() && event instanceof FailThroughEvent) throw e; // Rethrow if it's fail-through. // else warn - logger.warn("Exception occurred during event handling. Report this to the maintainers of {}, {}", - context.getAddon().getID(), context.getAddon().getAuthor(), e); + logger.warn("Exception occurred during event handling. Report this to the maintainers of {}@{}", + context.getAddon().getID(), context.getAddon().getVersion().getFormatted(), e); } }); } diff --git a/common/loader/addon/src/main/java/com/dfsek/terra/addon/BootstrapAddonLoader.java b/common/loader/addon/src/main/java/com/dfsek/terra/addon/BootstrapAddonLoader.java index c2e349254..75871c23a 100644 --- a/common/loader/addon/src/main/java/com/dfsek/terra/addon/BootstrapAddonLoader.java +++ b/common/loader/addon/src/main/java/com/dfsek/terra/addon/BootstrapAddonLoader.java @@ -17,6 +17,11 @@ package com.dfsek.terra.addon; +import ca.solostudios.strata.Versions; +import ca.solostudios.strata.version.Version; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.io.IOException; import java.io.UncheckedIOException; import java.lang.reflect.InvocationTargetException; @@ -26,31 +31,29 @@ import java.nio.file.Path; import java.util.jar.JarFile; import java.util.stream.Collectors; -import ca.solostudios.strata.Versions; -import ca.solostudios.strata.version.Version; - import com.dfsek.terra.addon.exception.AddonLoadException; import com.dfsek.terra.api.Platform; import com.dfsek.terra.api.addon.bootstrap.BootstrapBaseAddon; public class BootstrapAddonLoader implements BootstrapBaseAddon> { - private final Platform platform; - + private static final Logger logger = LoggerFactory.getLogger(BootstrapAddonLoader.class); private static final Version VERSION = Versions.getVersion(1, 0, 0); + private final Platform platform; + public BootstrapAddonLoader(Platform platform) { this.platform = platform; } @Override public Iterable> loadAddons(Path addonsFolder, ClassLoader parent) { Path bootstrapAddons = addonsFolder.resolve("bootstrap"); - platform.logger().info("Loading bootstrap addons from " + bootstrapAddons); + logger.info("Loading bootstrap addons from {}", bootstrapAddons); try { return Files.walk(bootstrapAddons, 1) .filter(path -> path.toFile().isFile() && path.toString().endsWith(".jar")) .map(path -> { try { - platform.logger().info("Loading bootstrap addon from JAR " + path); + logger.info("Loading bootstrap addon from JAR {}", path); JarFile jar = new JarFile(path.toFile()); String entry = jar.getManifest().getMainAttributes().getValue("Bootstrap-Addon-Entry-Point"); @@ -65,7 +68,7 @@ public class BootstrapAddonLoader implements BootstrapBaseAddon) in).getID()); + logger.info("Loaded bootstrap addon {}", ((BootstrapBaseAddon) in).getID()); return (BootstrapBaseAddon) in; } catch(InvocationTargetException e) { throw new AddonLoadException("Exception occurred while instantiating addon: ", e); diff --git a/platforms/bukkit/build.gradle.kts b/platforms/bukkit/build.gradle.kts index d58794346..4295bbd58 100644 --- a/platforms/bukkit/build.gradle.kts +++ b/platforms/bukkit/build.gradle.kts @@ -17,7 +17,8 @@ val purpurURL = "https://ci.pl3x.net/job/Purpur/lastSuccessfulBuild/artifact/fin dependencies { "shadedApi"(project(":common:implementation")) - "shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") + shadedImplementation("org.slf4j:slf4j-log4j12:1.7.32") +// "shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") "compileOnly"("io.papermc.paper:paper-api:1.17-R0.1-SNAPSHOT") "shadedImplementation"("io.papermc:paperlib:1.0.5") diff --git a/platforms/fabric/build.gradle.kts b/platforms/fabric/build.gradle.kts index 9de29c3e6..93a2cda83 100644 --- a/platforms/fabric/build.gradle.kts +++ b/platforms/fabric/build.gradle.kts @@ -24,7 +24,8 @@ val fabricLoader = "0.12.5" dependencies { "shadedApi"(project(":common:implementation")) - "shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") + shadedImplementation("org.slf4j:slf4j-log4j12:1.7.32") +// shadedImplementation("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") "minecraft"("com.mojang:minecraft:$minecraft") "mappings"("net.fabricmc:yarn:$minecraft+build.$yarn:v2") diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/FabricEntryPoint.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/FabricEntryPoint.java index 66f6c9089..11f6c64a6 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/FabricEntryPoint.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/FabricEntryPoint.java @@ -20,12 +20,6 @@ package com.dfsek.terra.fabric; import net.fabricmc.api.ModInitializer; import net.minecraft.util.Identifier; import net.minecraft.util.registry.Registry; -import net.minecraft.util.registry.RegistryKey; -import net.minecraft.world.gen.decorator.Decorator; -import net.minecraft.world.gen.decorator.NopeDecoratorConfig; -import net.minecraft.world.gen.feature.ConfiguredFeature; -import net.minecraft.world.gen.feature.DefaultFeatureConfig; -import net.minecraft.world.gen.feature.FeatureConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/PlatformImpl.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/PlatformImpl.java index 1233d1cf7..845461887 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/PlatformImpl.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/PlatformImpl.java @@ -19,9 +19,6 @@ package com.dfsek.terra.fabric; import com.dfsek.tectonic.exception.LoadException; import com.dfsek.tectonic.loading.TypeRegistry; - -import com.dfsek.terra.api.addon.BaseAddon; - import net.fabricmc.loader.api.FabricLoader; import net.minecraft.server.world.ServerWorld; import net.minecraft.util.Identifier; @@ -33,9 +30,9 @@ import java.util.Optional; import java.util.Set; import com.dfsek.terra.AbstractPlatform; +import com.dfsek.terra.api.addon.BaseAddon; import com.dfsek.terra.api.handle.ItemHandle; import com.dfsek.terra.api.handle.WorldHandle; -import com.dfsek.terra.api.util.Logger; import com.dfsek.terra.api.util.generic.Lazy; import com.dfsek.terra.config.lang.LangUtil; import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper; diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java index 1c427afd8..a22df18e2 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/generation/FabricChunkGeneratorWrapper.java @@ -17,17 +17,6 @@ package com.dfsek.terra.fabric.generation; -import com.dfsek.terra.api.config.ConfigPack; -import com.dfsek.terra.api.world.World; -import com.dfsek.terra.api.world.generator.ChunkData; -import com.dfsek.terra.api.world.generator.ChunkGenerator; -import com.dfsek.terra.api.world.generator.Chunkified; -import com.dfsek.terra.api.world.generator.GeneratorWrapper; -import com.dfsek.terra.fabric.FabricEntryPoint; -import com.dfsek.terra.fabric.block.FabricBlockState; -import com.dfsek.terra.fabric.mixin.StructureAccessorAccessor; -import com.dfsek.terra.util.FastRandom; - import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; import net.minecraft.block.BlockState; @@ -46,15 +35,18 @@ import net.minecraft.world.StructureWorldAccess; import net.minecraft.world.biome.Biome; import net.minecraft.world.biome.SpawnSettings; import net.minecraft.world.biome.source.BiomeAccess; -import net.minecraft.world.biome.source.util.MultiNoiseUtil.MultiNoiseSampler; -import net.minecraft.world.biome.source.util.MultiNoiseUtil.NoiseValuePoint; +import net.minecraft.world.biome.source.util.MultiNoiseUtil; import net.minecraft.world.chunk.Chunk; -import net.minecraft.world.gen.GenerationStep.Carver; +import net.minecraft.world.gen.GenerationStep; import net.minecraft.world.gen.StructureAccessor; import net.minecraft.world.gen.chunk.Blender; import net.minecraft.world.gen.chunk.StructuresConfig; import net.minecraft.world.gen.chunk.VerticalBlockSample; -import net.minecraft.world.gen.feature.*; +import net.minecraft.world.gen.feature.NetherFortressFeature; +import net.minecraft.world.gen.feature.OceanMonumentFeature; +import net.minecraft.world.gen.feature.PillagerOutpostFeature; +import net.minecraft.world.gen.feature.StructureFeature; +import net.minecraft.world.gen.feature.SwampHutFeature; import org.jetbrains.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,6 +54,17 @@ import org.slf4j.LoggerFactory; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; +import com.dfsek.terra.api.config.ConfigPack; +import com.dfsek.terra.api.world.World; +import com.dfsek.terra.api.world.generator.ChunkData; +import com.dfsek.terra.api.world.generator.ChunkGenerator; +import com.dfsek.terra.api.world.generator.Chunkified; +import com.dfsek.terra.api.world.generator.GeneratorWrapper; +import com.dfsek.terra.fabric.FabricEntryPoint; +import com.dfsek.terra.fabric.block.FabricBlockState; +import com.dfsek.terra.fabric.mixin.StructureAccessorAccessor; +import com.dfsek.terra.util.FastRandom; + public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.ChunkGenerator implements GeneratorWrapper { private static final Logger logger = LoggerFactory.getLogger(FabricChunkGeneratorWrapper.class); @@ -110,15 +113,17 @@ public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.C return new FabricChunkGeneratorWrapper((TerraBiomeSource) this.biomeSource.withSeed(seed), seed, pack); } - @Override - public MultiNoiseSampler getMultiNoiseSampler() { - return (x, y, z) -> new NoiseValuePoint(0, 0, 0, 0, 0, 0); + public void setPack(ConfigPack pack) { + this.pack = pack; + this.delegate = pack.getGeneratorProvider().newInstance(pack); + biomeSource.setPack(pack); + + logger.debug("Loading world with config pack {}", pack.getID()); } @Override - public void carve(ChunkRegion chunkRegion, long seed, BiomeAccess biomeAccess, StructureAccessor structureAccessor, Chunk chunk, - Carver generationStep) { - + public MultiNoiseUtil.MultiNoiseSampler getMultiNoiseSampler() { + return (x, y, z) -> new MultiNoiseUtil.NoiseValuePoint(0, 0, 0, 0, 0, 0); } @@ -285,12 +290,10 @@ public class FabricChunkGeneratorWrapper extends net.minecraft.world.gen.chunk.C return pack; } - public void setPack(ConfigPack pack) { - this.pack = pack; - this.delegate = pack.getGeneratorProvider().newInstance(pack); - biomeSource.setPack(pack); + @Override + public void carve(ChunkRegion chunkRegion, long seed, BiomeAccess biomeAccess, StructureAccessor structureAccessor, Chunk chunk, + GenerationStep.Carver generationStep) { - delegate.getPlatform().logger().info("Loading world with config pack " + pack.getID()); } public void setWorld(ServerWorld world) { diff --git a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/ServerWorldMixin.java b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/ServerWorldMixin.java index 702e0460e..efcc46ba7 100644 --- a/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/ServerWorldMixin.java +++ b/platforms/fabric/src/main/java/com/dfsek/terra/fabric/mixin/ServerWorldMixin.java @@ -37,6 +37,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import java.util.List; import java.util.concurrent.Executor; +import com.dfsek.terra.fabric.FabricEntryPoint; import com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper; diff --git a/platforms/sponge/build.gradle.kts b/platforms/sponge/build.gradle.kts index 606d28022..eed221ad2 100644 --- a/platforms/sponge/build.gradle.kts +++ b/platforms/sponge/build.gradle.kts @@ -11,7 +11,8 @@ repositories { dependencies { "shadedApi"(project(":common:implementation")) - "shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") + shadedImplementation("org.slf4j:slf4j-log4j12:1.7.32") +// "shadedImplementation"("org.apache.logging.log4j:log4j-slf4j-impl:2.8.1") "annotationProcessor"("org.spongepowered:spongeapi:9.0.0-SNAPSHOT") "shadedImplementation"("org.spongepowered:spongeapi:9.0.0-SNAPSHOT")