From 24c7dcc7f19dc79c761e17a21fa77077c2571ad2 Mon Sep 17 00:00:00 2001 From: "Ray J. Greenwell" Date: Tue, 21 Feb 2012 15:19:42 -0800 Subject: [PATCH] Allow message bundles to specify a parent bundle with the key '__parent'. --- .../java/com/threerings/util/MessageManager.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/threerings/util/MessageManager.java b/src/main/java/com/threerings/util/MessageManager.java index c73d850..846ea4f 100644 --- a/src/main/java/com/threerings/util/MessageManager.java +++ b/src/main/java/com/threerings/util/MessageManager.java @@ -186,7 +186,17 @@ public class MessageManager */ protected void initBundle (MessageBundle bundle, String path, ResourceBundle rbundle) { - bundle.init(this, path, rbundle, _global); + MessageBundle parentBundle = null; + try { + parentBundle = getBundle(rbundle.getString("__parent")); + // Note: if getBundle() fails to find our parent it will log a warning and return null + } catch (MissingResourceException mre ) { + // no resource named __parent: it's ok. + } + if (parentBundle == null) { + parentBundle = _global; + } + bundle.init(this, path, rbundle, parentBundle); } /**