mirror of
https://github.com/AuthMe/AuthMeReloaded.git
synced 2024-12-22 00:27:36 +01:00
Messages: simplify public interface, split to array as last operation
This commit is contained in:
parent
fc0c4b9721
commit
3abb0b5ac4
@ -3,7 +3,6 @@ package fr.xephi.authme.output;
|
|||||||
import fr.xephi.authme.ConsoleLogger;
|
import fr.xephi.authme.ConsoleLogger;
|
||||||
import fr.xephi.authme.initialization.SettingsDependent;
|
import fr.xephi.authme.initialization.SettingsDependent;
|
||||||
import fr.xephi.authme.settings.Settings;
|
import fr.xephi.authme.settings.Settings;
|
||||||
import fr.xephi.authme.util.StringUtils;
|
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.configuration.file.FileConfiguration;
|
import org.bukkit.configuration.file.FileConfiguration;
|
||||||
@ -19,6 +18,9 @@ import java.io.InputStreamReader;
|
|||||||
*/
|
*/
|
||||||
public class Messages implements SettingsDependent {
|
public class Messages implements SettingsDependent {
|
||||||
|
|
||||||
|
// Custom Authme tag replaced to new line
|
||||||
|
private static final String NEWLINE_TAG = "%nl%";
|
||||||
|
|
||||||
private FileConfiguration configuration;
|
private FileConfiguration configuration;
|
||||||
private String fileName;
|
private String fileName;
|
||||||
private final String defaultFile;
|
private final String defaultFile;
|
||||||
@ -71,18 +73,12 @@ public class Messages implements SettingsDependent {
|
|||||||
* @return The message split by new lines
|
* @return The message split by new lines
|
||||||
*/
|
*/
|
||||||
public String[] retrieve(MessageKey key) {
|
public String[] retrieve(MessageKey key) {
|
||||||
final String code = key.getKey();
|
String message = retrieveMessage(key);
|
||||||
String message = configuration.getString(code);
|
|
||||||
|
|
||||||
if (message == null) {
|
|
||||||
ConsoleLogger.warning("Error getting message with key '" + code + "'. "
|
|
||||||
+ "Please verify your config file at '" + fileName + "'");
|
|
||||||
return formatMessage(getDefault(code));
|
|
||||||
}
|
|
||||||
if (message.isEmpty()) {
|
if (message.isEmpty()) {
|
||||||
|
// Return empty array instead of array with 1 empty string as entry
|
||||||
return new String[0];
|
return new String[0];
|
||||||
}
|
}
|
||||||
return formatMessage(message);
|
return message.split("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -91,8 +87,16 @@ public class Messages implements SettingsDependent {
|
|||||||
* @param key The message key to retrieve
|
* @param key The message key to retrieve
|
||||||
* @return The message from the file
|
* @return The message from the file
|
||||||
*/
|
*/
|
||||||
public String retrieveSingle(MessageKey key) {
|
private String retrieveMessage(MessageKey key) {
|
||||||
return StringUtils.join("\n", retrieve(key));
|
final String code = key.getKey();
|
||||||
|
String message = configuration.getString(code);
|
||||||
|
|
||||||
|
if (message == null) {
|
||||||
|
ConsoleLogger.warning("Error getting message with key '" + code + "'. "
|
||||||
|
+ "Please verify your config file at '" + fileName + "'");
|
||||||
|
return formatMessage(getDefault(code));
|
||||||
|
}
|
||||||
|
return formatMessage(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -105,7 +109,7 @@ public class Messages implements SettingsDependent {
|
|||||||
* @return The message from the file with replacements
|
* @return The message from the file with replacements
|
||||||
*/
|
*/
|
||||||
public String retrieveSingle(MessageKey key, String... replacements) {
|
public String retrieveSingle(MessageKey key, String... replacements) {
|
||||||
String message = retrieveSingle(key);
|
String message = retrieveMessage(key);
|
||||||
String[] tags = key.getTags();
|
String[] tags = key.getTags();
|
||||||
if (replacements.length == tags.length) {
|
if (replacements.length == tags.length) {
|
||||||
for (int i = 0; i < tags.length; ++i) {
|
for (int i = 0; i < tags.length; ++i) {
|
||||||
@ -141,12 +145,9 @@ public class Messages implements SettingsDependent {
|
|||||||
return "Error retrieving message '" + code + "'";
|
return "Error retrieving message '" + code + "'";
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String[] formatMessage(String message) {
|
private static String formatMessage(String message) {
|
||||||
String[] lines = message.split("%nl%");
|
return ChatColor.translateAlternateColorCodes('&', message)
|
||||||
for (int i = 0; i < lines.length; ++i) {
|
.replace(NEWLINE_TAG, "\n");
|
||||||
lines[i] = ChatColor.translateAlternateColorCodes('&', lines[i]);
|
|
||||||
}
|
|
||||||
return lines;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user