diff --git a/src/main/java/net/knarcraft/bookswithoutborders/config/StaticMessage.java b/src/main/java/net/knarcraft/bookswithoutborders/config/StaticMessage.java index e4e9d51..d08021e 100644 --- a/src/main/java/net/knarcraft/bookswithoutborders/config/StaticMessage.java +++ b/src/main/java/net/knarcraft/bookswithoutborders/config/StaticMessage.java @@ -43,6 +43,11 @@ public enum StaticMessage { Warning! [BooksWithoutBorders] failed to initialize! Please confirm the correct version of [BooksWithoutBorders] is being run for this version of spigot!"""), + EXCEPTION_UNKNOWN_DIRECTORY("Unknown directory {directory}"), + EXCEPTION_UNEXPECTED_EXTENSION("File with unexpected extension {extension} encountered!"), + EXCEPTION_MIGRATE_BOOK_LOAD_FAILED("Unable to load book: {path}"), + EXCEPTION_META_HAS_SEPARATOR("The author; {author} or title; {title} contains the title author separator" + + " ({separator}). Saving this book would lead to unexpected problems."), /** * The cost type used to specify economy diff --git a/src/main/java/net/knarcraft/bookswithoutborders/thread/MigrationQueueThread.java b/src/main/java/net/knarcraft/bookswithoutborders/thread/MigrationQueueThread.java index 3fa045b..9a5edb9 100644 --- a/src/main/java/net/knarcraft/bookswithoutborders/thread/MigrationQueueThread.java +++ b/src/main/java/net/knarcraft/bookswithoutborders/thread/MigrationQueueThread.java @@ -1,6 +1,7 @@ package net.knarcraft.bookswithoutborders.thread; import net.knarcraft.bookswithoutborders.BooksWithoutBorders; +import net.knarcraft.bookswithoutborders.config.StaticMessage; import net.knarcraft.bookswithoutborders.config.translation.Translatable; import net.knarcraft.bookswithoutborders.container.EncryptedBook; import net.knarcraft.bookswithoutborders.container.MigrationRequest; @@ -99,7 +100,8 @@ public class MigrationQueueThread implements Runnable { String extension = BookFileHelper.getExtensionFromPath(file.getName()); if (!extension.equalsIgnoreCase("txt") && !extension.equalsIgnoreCase("yml")) { - BooksWithoutBorders.log(Level.WARNING, "File with unexpected extension " + extension + " encountered!"); + BooksWithoutBorders.log(Level.WARNING, new FormatBuilder(StaticMessage.EXCEPTION_UNEXPECTED_EXTENSION.toString()). + replace("{extension}", extension).build()); return true; } @@ -117,7 +119,8 @@ public class MigrationQueueThread implements Runnable { } if (loadedBook == null) { - BooksWithoutBorders.log(Level.SEVERE, "Unable to load book: " + file.getAbsolutePath()); + BooksWithoutBorders.log(Level.SEVERE, new FormatBuilder(StaticMessage.EXCEPTION_MIGRATE_BOOK_LOAD_FAILED.toString()). + replace("{path}", file.getAbsolutePath()).build()); return false; } diff --git a/src/main/java/net/knarcraft/bookswithoutborders/utility/BookHelper.java b/src/main/java/net/knarcraft/bookswithoutborders/utility/BookHelper.java index bf205e0..f5d80db 100644 --- a/src/main/java/net/knarcraft/bookswithoutborders/utility/BookHelper.java +++ b/src/main/java/net/knarcraft/bookswithoutborders/utility/BookHelper.java @@ -170,9 +170,9 @@ public final class BookHelper { if (InputCleaningHelper.cleanString(bookName).contains(separator) || InputCleaningHelper.cleanString(authorName).contains(separator)) { - throw new IllegalArgumentException("The author; " + authorName + " or title; " + bookName + - " contains the title author separator (" + separator + "). Saving this " + - "book would lead to unexpected problems."); + throw new IllegalArgumentException(new FormatBuilder(StaticMessage.EXCEPTION_META_HAS_SEPARATOR.toString()). + replace("{author}", authorName).replace("{title}", bookName). + replace("{separator}", separator).build()); } return InputCleaningHelper.cleanString(bookName + separator + authorName); diff --git a/src/main/java/net/knarcraft/bookswithoutborders/utility/BookLoader.java b/src/main/java/net/knarcraft/bookswithoutborders/utility/BookLoader.java index f97a5e9..001c5f3 100644 --- a/src/main/java/net/knarcraft/bookswithoutborders/utility/BookLoader.java +++ b/src/main/java/net/knarcraft/bookswithoutborders/utility/BookLoader.java @@ -3,6 +3,7 @@ package net.knarcraft.bookswithoutborders.utility; import net.knarcraft.bookswithoutborders.BooksWithoutBorders; import net.knarcraft.bookswithoutborders.config.BwBConfig; import net.knarcraft.bookswithoutborders.config.Permission; +import net.knarcraft.bookswithoutborders.config.StaticMessage; import net.knarcraft.bookswithoutborders.config.translation.Translatable; import net.knarcraft.bookswithoutborders.state.BookDirectory; import net.knarcraft.knarlib.formatting.FormatBuilder; @@ -170,7 +171,8 @@ public final class BookLoader { if (folder != null) { file = BookFileHelper.findBookFile(folder, fileName); } else { - BooksWithoutBorders.log(Level.WARNING, "Unknown directory " + bookDirectory); + BooksWithoutBorders.log(Level.WARNING, new FormatBuilder(StaticMessage.EXCEPTION_UNKNOWN_DIRECTORY.toString()). + replace("{directory}", bookDirectory.toString()).build()); } } if (file == null || !file.isFile()) { diff --git a/src/main/java/net/knarcraft/bookswithoutborders/utility/EncryptionHelper.java b/src/main/java/net/knarcraft/bookswithoutborders/utility/EncryptionHelper.java index d5a09a4..445bfe8 100644 --- a/src/main/java/net/knarcraft/bookswithoutborders/utility/EncryptionHelper.java +++ b/src/main/java/net/knarcraft/bookswithoutborders/utility/EncryptionHelper.java @@ -97,7 +97,7 @@ public final class EncryptionHelper { case SUBSTITUTION -> new SubstitutionCipher(EncryptionHelper.getNumberKeyFromStringKey(key)); case AES -> { if (aesConfiguration == null) { - throw new IllegalArgumentException("Attempted to perform AES encryption without a valid AES configuration"); + throw new IllegalArgumentException(StaticMessage.EXCEPTION_AES_NO_CONFIGURATION.toString()); } else { yield new AES(aesConfiguration); }