From 1a3ebd0990c6f157b6d66331d37737ddc6413729 Mon Sep 17 00:00:00 2001 From: fullwall Date: Thu, 4 Oct 2012 18:28:23 +0800 Subject: [PATCH] Test --- src/main/java/net/citizensnpcs/util/Messages.java | 1 + src/main/java/net/citizensnpcs/util/Translator.java | 11 +++++++++++ src/main/resources/messages_en.properties | 1 + 3 files changed, 13 insertions(+) diff --git a/src/main/java/net/citizensnpcs/util/Messages.java b/src/main/java/net/citizensnpcs/util/Messages.java index 01ea21ea2..18efa0565 100644 --- a/src/main/java/net/citizensnpcs/util/Messages.java +++ b/src/main/java/net/citizensnpcs/util/Messages.java @@ -152,6 +152,7 @@ public class Messages { public static final String VULNERABLE_STOPPED = "citizens.commands.npc.vulnerable.stopped"; public static final String WAYPOINT_PROVIDER_SET = "citizens.waypoints.set-provider"; public static final String WRITING_DEFAULT_SETTING = "citizens.settings.writing-default"; + public static final String MISSING_TRANSLATIONS = "citizens.notifications.missing-translations"; private static Properties getDefaultBundleProperties() { Properties defaults = new Properties(); diff --git a/src/main/java/net/citizensnpcs/util/Translator.java b/src/main/java/net/citizensnpcs/util/Translator.java index 4548ddf6c..103b75dd3 100644 --- a/src/main/java/net/citizensnpcs/util/Translator.java +++ b/src/main/java/net/citizensnpcs/util/Translator.java @@ -28,6 +28,7 @@ public class Translator { Translator.class.getClassLoader(), resourceFile)); } catch (MissingResourceException e) { preferredBundle = getDefaultBundle(); + Messaging.logTr(Messages.MISSING_TRANSLATIONS, locale); } } @@ -89,6 +90,11 @@ public class Translator { return file.toURI().toURL(); } catch (MalformedURLException ex) { } + } else { + string = string.replaceFirst("/", ""); + URL test = Translator.class.getResource('/' + string); + if (test != null) + return test; } return super.getResource(string); } @@ -101,6 +107,11 @@ public class Translator { return new FileInputStream(file); } catch (FileNotFoundException ex) { } + } else { + string = string.replaceFirst("/", ""); + InputStream stream = Translator.class.getResourceAsStream('/' + string); + if (stream != null) + return stream; } return super.getResourceAsStream(string); } diff --git a/src/main/resources/messages_en.properties b/src/main/resources/messages_en.properties index d4428dd22..1a12e0fa0 100644 --- a/src/main/resources/messages_en.properties +++ b/src/main/resources/messages_en.properties @@ -7,6 +7,7 @@ citizens.commands.invalid-number=That is not a valid number. citizens.commands.npc.age.cannot-be-aged=The mob type '{0}' cannot be aged. citizens.commands.npc.age.invalid-age=Invalid age. Valid ages are adult, baby, number between -24000 and 0 citizens.commands.npc.age.set=[[{0}]] is now [[{1}]]. +citizens.notifications.missing-translations=Missing translations file for locale {0}. Defaulting to en locale. citizens.commands.npc.behaviour.added=Behaviours added. citizens.commands.npc.behaviour.removed=Behaviours removed. citizens.commands.npc.controllable.not-controllable=[[{0}]] is not controllable.