/** * Get the message from the bundle. * * @param key the key * @return the message */ @Override public String get(String key) { if (key == null) { return "??????"; } try { return getBundle().getString(key); } catch (MissingResourceException e) { return "???" + key + "???"; } }
@Test public void testGetBundle() { // GIVEN final DefaultMessagesImpl defaultMessagesImpl = new DefaultMessagesImpl(UTF8_BUNDLE, Locale.JAPANESE); // WHEN final ResourceBundle resourceBundle = defaultMessagesImpl.getBundle(); // THEN assertEquals(UTF8_TEST_STRING, resourceBundle.getString("test.add")); }
/** * Initializes a new Messages instances for the given MessagesID. By default, we chain to the same bundle with the * default Locale. (so untranslated messages show up in the default language) */ protected Messages newMessages(MessagesID messagesID) { Messages messages = new DefaultMessagesImpl(messagesID.basename, messagesID.locale); if (!getDefaultLocale().equals(messagesID.locale)) { messages = new MessagesChain(messages).chain(getMessages(messagesID.basename, getDefaultLocale())); } return messages; }
final Locale locale = getLocale(); final Locale defaultLocale = MessagesManager.getInstance().getDefaultLocale();
final DefaultMessagesImpl defaultMessagesImpl = new DefaultMessagesImpl("info.magnolia.cms.i18n.anothertest", Locale.ENGLISH); assertThat(() -> defaultMessagesImpl.getBundle().getString("title"), throwsAnException(instanceOf(MissingResourceException.class)));
/** * Iterate over the keys. */ @Override public Iterator<String> keys() { ResourceBundle bundle = this.getBundle(); if (bundle != null) { return IteratorUtils.asIterator(bundle.getKeys()); } return IteratorUtils.EMPTY_ITERATOR; } }