test_class.file: restx-i18n/src/test/java/restx/i18n/DefaultMessagesTest.java
test_class.identifier: DefaultMessagesTest
test_case.body: @Test
      public void should_access_values() throws Exception {
          DefaultMessages m = new DefaultMessages("restx.i18n.test");
  
          assertThat(m.getMessageTemplate("key2", Locale.ENGLISH)).isEqualTo("Hello {{who}}!");
          assertThat(m.getMessageTemplate("key2", Locale.FRENCH)).isEqualTo("Bonjour {{who}} !");
      }
test_case.class_method_signature: DefaultMessagesTest.should_access_values()
test_case.full_signature: @Test public void should_access_values()
test_case.identifier: should_access_values
test_case.invocations: isEqualTo assertThat getMessageTemplate isEqualTo assertThat getMessageTemplate
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void should_access_values()
focal_class.declarator: baseName
focal_class.modifier: private final
focal_class.original_string: private final String baseName;
focal_class.type: String
focal_class.var_name: baseName
focal_class.declarator: charset
focal_class.modifier: private final
focal_class.original_string: private final Charset charset;
focal_class.type: Charset
focal_class.var_name: charset
focal_class.declarator: cachedKeysByLocale = CacheBuilder.newBuilder().build(new CacheLoader<Locale, Iterable<String>>() {
          @Override
          public Iterable<String> load(Locale locale) throws Exception {
              Optional<ResourceBundle> bundle = getBundle(locale);
              return bundle.isPresent() ? Ordering.natural().sortedCopy(bundle.get().keySet()) : Collections.<String>emptySet();
          }
      })
focal_class.modifier: private final
focal_class.original_string: private final LoadingCache<Locale, Iterable<String>> cachedKeysByLocale = CacheBuilder.newBuilder().build(new CacheLoader<Locale, Iterable<String>>() {
          @Override
          public Iterable<String> load(Locale locale) throws Exception {
              Optional<ResourceBundle> bundle = getBundle(locale);
              return bundle.isPresent() ? Ordering.natural().sortedCopy(bundle.get().keySet()) : Collections.<String>emptySet();
          }
      });
focal_class.type: LoadingCache<Locale, Iterable<String>>
focal_class.var_name: cachedKeysByLocale
focal_class.file: restx-i18n/src/main/java/restx/i18n/DefaultMessages.java
focal_class.identifier: DefaultMessages
focal_class.interfaces: implements Messages
focal_class.class_method_signature: DefaultMessages.DefaultMessages(String baseName)
focal_class.full_signature: public  DefaultMessages(String baseName)
focal_class.identifier: DefaultMessages
focal_class.modifiers: public
focal_class.parameters: (String baseName)
focal_class.signature:  DefaultMessages(String baseName)
focal_class.class_method_signature: DefaultMessages.DefaultMessages(String baseName, Charset charset)
focal_class.full_signature: public  DefaultMessages(String baseName, Charset charset)
focal_class.identifier: DefaultMessages
focal_class.modifiers: public
focal_class.parameters: (String baseName, Charset charset)
focal_class.signature:  DefaultMessages(String baseName, Charset charset)
focal_class.class_method_signature: DefaultMessages.getBaseName()
focal_class.full_signature: public String getBaseName()
focal_class.identifier: getBaseName
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getBaseName()
focal_class.class_method_signature: DefaultMessages.getCharset()
focal_class.full_signature: public Charset getCharset()
focal_class.identifier: getCharset
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Charset
focal_class.signature: Charset getCharset()
focal_class.class_method_signature: DefaultMessages.getMessage(String key, MessageParams params, Locale locale)
focal_class.full_signature: @Override public String getMessage(String key, MessageParams params, Locale locale)
focal_class.identifier: getMessage
focal_class.modifiers: @Override public
focal_class.parameters: (String key, MessageParams params, Locale locale)
focal_class.return: String
focal_class.signature: String getMessage(String key, MessageParams params, Locale locale)
focal_class.class_method_signature: DefaultMessages.keys(Locale locale)
focal_class.full_signature: @Override public Iterable<String> keys(Locale locale)
focal_class.identifier: keys
focal_class.modifiers: @Override public
focal_class.parameters: (Locale locale)
focal_class.return: Iterable<String>
focal_class.signature: Iterable<String> keys(Locale locale)
focal_class.class_method_signature: DefaultMessages.invalidateCachedKeysFor(Locale locale)
focal_class.full_signature: protected void invalidateCachedKeysFor(Locale locale)
focal_class.identifier: invalidateCachedKeysFor
focal_class.modifiers: protected
focal_class.parameters: (Locale locale)
focal_class.return: void
focal_class.signature: void invalidateCachedKeysFor(Locale locale)
focal_class.class_method_signature: DefaultMessages.keys()
focal_class.full_signature: @Override public Iterable<String> keys()
focal_class.identifier: keys
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Iterable<String>
focal_class.signature: Iterable<String> keys()
focal_class.class_method_signature: DefaultMessages.entries(Locale locale)
focal_class.full_signature: @Override public Iterable<Entry<String, String>> entries(Locale locale)
focal_class.identifier: entries
focal_class.modifiers: @Override public
focal_class.parameters: (Locale locale)
focal_class.return: Iterable<Entry<String, String>>
focal_class.signature: Iterable<Entry<String, String>> entries(Locale locale)
focal_class.class_method_signature: DefaultMessages.getMessageTemplate(String key, Locale locale)
focal_class.full_signature: @Override public String getMessageTemplate(String key, Locale locale)
focal_class.identifier: getMessageTemplate
focal_class.modifiers: @Override public
focal_class.parameters: (String key, Locale locale)
focal_class.return: String
focal_class.signature: String getMessageTemplate(String key, Locale locale)
focal_class.class_method_signature: DefaultMessages.getTemplate(String key, Locale locale)
focal_class.full_signature: protected Template getTemplate(String key, Locale locale)
focal_class.identifier: getTemplate
focal_class.modifiers: protected
focal_class.parameters: (String key, Locale locale)
focal_class.return: Template
focal_class.signature: Template getTemplate(String key, Locale locale)
focal_class.class_method_signature: DefaultMessages.getTemplateString(String key, Locale locale)
focal_class.full_signature: protected String getTemplateString(String key, Locale locale)
focal_class.identifier: getTemplateString
focal_class.modifiers: protected
focal_class.parameters: (String key, Locale locale)
focal_class.return: String
focal_class.signature: String getTemplateString(String key, Locale locale)
focal_class.class_method_signature: DefaultMessages.getTemplateString(String key, Locale locale, Optional<ResourceBundle> bundle)
focal_class.full_signature: private String getTemplateString(String key, Locale locale, Optional<ResourceBundle> bundle)
focal_class.identifier: getTemplateString
focal_class.modifiers: private
focal_class.parameters: (String key, Locale locale, Optional<ResourceBundle> bundle)
focal_class.return: String
focal_class.signature: String getTemplateString(String key, Locale locale, Optional<ResourceBundle> bundle)
focal_class.class_method_signature: DefaultMessages.getBundle(Locale locale)
focal_class.full_signature: protected Optional<ResourceBundle> getBundle(Locale locale)
focal_class.identifier: getBundle
focal_class.modifiers: protected
focal_class.parameters: (Locale locale)
focal_class.return: Optional<ResourceBundle>
focal_class.signature: Optional<ResourceBundle> getBundle(Locale locale)
focal_class.class_method_signature: DefaultMessages.newResourceBundle(URL resource, Reader input)
focal_class.full_signature: protected PropertyResourceBundle newResourceBundle(URL resource, Reader input)
focal_class.identifier: newResourceBundle
focal_class.modifiers: protected
focal_class.parameters: (URL resource, Reader input)
focal_class.return: PropertyResourceBundle
focal_class.signature: PropertyResourceBundle newResourceBundle(URL resource, Reader input)
focal_class.class_method_signature: DefaultMessages.getTimeToLive()
focal_class.full_signature: protected long getTimeToLive()
focal_class.identifier: getTimeToLive
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long getTimeToLive()
focal_class.class_method_signature: DefaultMessages.getResource(String resourceName)
focal_class.full_signature: protected URL getResource(String resourceName)
focal_class.identifier: getResource
focal_class.modifiers: protected
focal_class.parameters: (String resourceName)
focal_class.return: URL
focal_class.signature: URL getResource(String resourceName)
focal_class.class_method_signature: DefaultMessages.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.superclass: extends AbstractMessages
focal_method.body: @Override
      public String getMessageTemplate(String key, Locale locale) {
          return getTemplateString(key, locale);
      }
focal_method.class_method_signature: DefaultMessages.getMessageTemplate(String key, Locale locale)
focal_method.full_signature: @Override public String getMessageTemplate(String key, Locale locale)
focal_method.identifier: getMessageTemplate
focal_method.invocations: getTemplateString
focal_method.modifiers: @Override public
focal_method.parameters: (String key, Locale locale)
focal_method.return: String
focal_method.signature: String getMessageTemplate(String key, Locale locale)