mirror of
https://github.com/Multiverse/Multiverse-Core.git
synced 2025-02-27 09:51:31 +01:00
feat: Allow for custom locale folder path
This commit is contained in:
parent
47a92deffd
commit
44904eaef4
@ -1,7 +1,5 @@
|
||||
package com.onarandombox.MultiverseCore.locale;
|
||||
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
@ -9,15 +7,22 @@ import java.io.InputStream;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
/**
|
||||
* A class loader that loads resources from the plugin's locales folder.
|
||||
*/
|
||||
public class FileResClassLoader extends ClassLoader {
|
||||
private static final String DEFAULT_LOCALE_FOLDER_PATH = "locales";
|
||||
private final transient File localesFolder;
|
||||
|
||||
public FileResClassLoader(final ClassLoader classLoader, final Plugin plugin) {
|
||||
super(classLoader);
|
||||
this.localesFolder = new File(plugin.getDataFolder(), "locales");
|
||||
public FileResClassLoader(final Plugin plugin) {
|
||||
this(plugin, DEFAULT_LOCALE_FOLDER_PATH);
|
||||
}
|
||||
|
||||
public FileResClassLoader(final Plugin plugin, final String localesFolderPath) {
|
||||
super(plugin.getClass().getClassLoader());
|
||||
this.localesFolder = new File(plugin.getDataFolder(), localesFolderPath);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -3,13 +3,18 @@ package com.onarandombox.MultiverseCore.locale;
|
||||
import co.aikar.commands.BukkitCommandManager;
|
||||
import co.aikar.commands.BukkitLocales;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PluginLocales extends BukkitLocales {
|
||||
public PluginLocales(BukkitCommandManager manager) {
|
||||
super(manager);
|
||||
}
|
||||
|
||||
public boolean addFileResClassLoader(Plugin plugin) {
|
||||
return this.addBundleClassLoader(new FileResClassLoader(plugin.getClass().getClassLoader(), plugin));
|
||||
public boolean addFileResClassLoader(@NotNull Plugin plugin) {
|
||||
return this.addBundleClassLoader(new FileResClassLoader(plugin));
|
||||
}
|
||||
|
||||
public boolean addFileResClassLoader(@NotNull Plugin plugin, @NotNull String localesFolderPath) {
|
||||
return this.addBundleClassLoader(new FileResClassLoader(plugin, localesFolderPath));
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user