From 632993678ee86eefbf564900a5cf9c21a1cd6583 Mon Sep 17 00:00:00 2001 From: Adrian Victor Date: Mon, 25 May 2026 21:45:33 -0300 Subject: [PATCH] Make file provider accept plugin to get correct resource file --- .../adrianvictor/lib/impl/b1_7_3/B1_7_3Registrar.java | 2 +- .../org/adrianvictor/lib/impl/b1_7_3/file/File.java | 10 ++-------- .../adrianvictor/lib/file/provider/FileProvider.java | 3 ++- .../adrianvictor/lib/impl/r1_21/R1_21Registrar.java | 2 +- .../org/adrianvictor/lib/impl/r1_21/file/File.java | 8 +------- 5 files changed, 7 insertions(+), 18 deletions(-) diff --git a/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/B1_7_3Registrar.java b/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/B1_7_3Registrar.java index 8c7c41d..88934ee 100644 --- a/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/B1_7_3Registrar.java +++ b/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/B1_7_3Registrar.java @@ -31,6 +31,6 @@ public class B1_7_3Registrar implements VersionedServiceRegistrar { factory.register(ConfigurationProvider.class, "b1_7_3", Configuration::new); factory.register(TextColorProvider.class, "b1_7_3", TextColor::new); factory.register(LoggerProvider.class, "b1_7_3", Logger::new); - factory.register(FileProvider.class, "b1_7_3", () -> new File(plugin)); + factory.register(FileProvider.class, "b1_7_3", File::new); } } diff --git a/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/file/File.java b/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/file/File.java index 731547d..943c0b3 100644 --- a/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/file/File.java +++ b/src/b1_7_3/java/org/adrianvictor/lib/impl/b1_7_3/file/File.java @@ -8,21 +8,15 @@ import java.io.IOException; import java.io.InputStream; public class File implements FileProvider { - private final JavaPlugin plugin; - - public File(JavaPlugin plugin) { - this.plugin = plugin; - } - @Override - public void saveResource(String resourcePath, boolean replace) throws IOException { + public void saveResource(String resourcePath, boolean replace, JavaPlugin plugin) throws IOException { java.io.File file = new java.io.File(plugin.getDataFolder(), resourcePath); if (!file.exists() || replace) { file.getParentFile().mkdirs(); - InputStream in = this.getClass().getResourceAsStream("/" + resourcePath); + InputStream in = plugin.getClass().getResourceAsStream("/" + resourcePath); if (in == null) { throw new IllegalArgumentException("Resource not found: " + resourcePath); diff --git a/src/main/java/org/adrianvictor/lib/file/provider/FileProvider.java b/src/main/java/org/adrianvictor/lib/file/provider/FileProvider.java index 72eea80..5095370 100644 --- a/src/main/java/org/adrianvictor/lib/file/provider/FileProvider.java +++ b/src/main/java/org/adrianvictor/lib/file/provider/FileProvider.java @@ -1,6 +1,7 @@ package org.adrianvictor.lib.file.provider; import org.adrianvictor.lib.Main; +import org.bukkit.plugin.java.JavaPlugin; import java.io.IOException; @@ -9,5 +10,5 @@ public interface FileProvider { return Main.getServiceFactory().getService(FileProvider.class); } - void saveResource(String resourcePath, boolean replace) throws IOException; + void saveResource(String resourcePath, boolean replace, JavaPlugin plugin) throws IOException; } diff --git a/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/R1_21Registrar.java b/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/R1_21Registrar.java index 4803ad6..dff4d46 100644 --- a/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/R1_21Registrar.java +++ b/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/R1_21Registrar.java @@ -31,6 +31,6 @@ public class R1_21Registrar implements VersionedServiceRegistrar { factory.register(ConfigurationProvider.class, "r1_1", Configuration::new); factory.register(TextColorProvider.class, "r1_16_5", TextColor::new); factory.register(LoggerProvider.class, "r1_21", Logger::new); - factory.register(FileProvider.class, "r1_3", () -> new File(plugin)); + factory.register(FileProvider.class, "r1_21", File::new); } } diff --git a/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/file/File.java b/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/file/File.java index 26bf88c..de313be 100644 --- a/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/file/File.java +++ b/src/r1_21/java/org/adrianvictor/lib/impl/r1_21/file/File.java @@ -4,14 +4,8 @@ import org.adrianvictor.lib.file.provider.FileProvider; import org.bukkit.plugin.java.JavaPlugin; public class File implements FileProvider { - private final JavaPlugin plugin; - - public File(JavaPlugin plugin) { - this.plugin = plugin; - } - @Override - public void saveResource(String resourcePath, boolean replace) { + public void saveResource(String resourcePath, boolean replace, JavaPlugin plugin) { plugin.saveResource(resourcePath, replace); } }