Module org.snapfx

Class DockResourceBundleLocalizationProvider

java.lang.Object
org.snapfx.localization.DockResourceBundleLocalizationProvider
All Implemented Interfaces:
DockLocalizationProvider

public final class DockResourceBundleLocalizationProvider extends Object implements DockLocalizationProvider
DockLocalizationProvider implementation backed by Java ResourceBundles.

The provider returns null when a bundle or key is unavailable.

Resource bundles are read as UTF-8 on modern Java runtimes (Java 9+).

  • Constructor Details

    • DockResourceBundleLocalizationProvider

      public DockResourceBundleLocalizationProvider(String baseName)
      Creates a provider for a bundle base name using the context class loader.
      Parameters:
      baseName - resource-bundle base name (for example org.snapfx.i18n.snapfx)
    • DockResourceBundleLocalizationProvider

      public DockResourceBundleLocalizationProvider(String baseName, ClassLoader classLoader)
      Creates a provider for a bundle base name and explicit class loader.
      Parameters:
      baseName - resource-bundle base name (for example org.snapfx.i18n.snapfx)
      classLoader - class loader used to load bundles; when null, this class' loader is used
    • DockResourceBundleLocalizationProvider

      public DockResourceBundleLocalizationProvider(String baseName, Module module)
      Creates a provider for a bundle base name and explicit module.

      Use this constructor when bundles are stored in a named module and should be resolved directly from that module at runtime.

      Parameters:
      baseName - resource-bundle base name (for example org.snapfx.i18n.snapfx)
      module - module that contains the bundle resources
  • Method Details

    • resolve

      public String resolve(Locale locale, String key)
      Resolves a translation pattern from the configured resource bundle.

      Lookup only accepts the resolved bundle when it matches the requested locale language (or root bundle). This prevents implicit fallback to the JVM default locale.

      Specified by:
      resolve in interface DockLocalizationProvider
      Parameters:
      locale - requested locale, never null
      key - translation key, never null
      Returns:
      message pattern, or null if the bundle/key is unavailable