Class ResourceBundleThemeSource

java.lang.Object
org.springframework.ui.context.support.ResourceBundleThemeSource
All Implemented Interfaces:
Aware, BeanClassLoaderAware, HierarchicalThemeSource, ThemeSource

@Deprecated(since="6.0") public class ResourceBundleThemeSource extends Object implements HierarchicalThemeSource, BeanClassLoaderAware
Deprecated.
as of 6.0 in favor of using CSS, without direct replacement
ThemeSource implementation that looks up an individual ResourceBundle per theme. The theme name gets interpreted as ResourceBundle basename, supporting a common basename prefix for all themes.
Author:
Jean-Pierre Pawlak, Juergen Hoeller
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final Log
    Deprecated.
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    Deprecated.
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected MessageSource
    Deprecated.
    Create a MessageSource for the given basename, to be used as MessageSource for the corresponding theme.
    Deprecated.
    Return the parent of this ThemeSource, or null if none.
    getTheme(String themeName)
    Deprecated.
    This implementation returns a SimpleTheme instance, holding a ResourceBundle-based MessageSource whose basename corresponds to the given theme name (prefixed by the configured "basenamePrefix").
    protected void
    Deprecated.
    Initialize the MessageSource of the given theme with the one from the corresponding parent of this ThemeSource.
    void
    setBasenamePrefix(String basenamePrefix)
    Deprecated.
    Set the prefix that gets applied to the ResourceBundle basenames, i.e.
    void
    Deprecated.
    Callback that supplies the bean class loader to a bean instance.
    void
    setDefaultEncoding(String defaultEncoding)
    Deprecated.
    Set the default charset to use for parsing resource bundle files.
    void
    setFallbackToSystemLocale(boolean fallbackToSystemLocale)
    Deprecated.
    Set whether to fall back to the system Locale if no files for a specific Locale have been found.
    void
    Deprecated.
    Set the parent that will be used to try to resolve theme messages that this object can't resolve.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • logger

      protected final Log logger
      Deprecated.
  • Constructor Details

    • ResourceBundleThemeSource

      public ResourceBundleThemeSource()
      Deprecated.
  • Method Details

    • setParentThemeSource

      public void setParentThemeSource(@Nullable ThemeSource parent)
      Deprecated.
      Description copied from interface: HierarchicalThemeSource
      Set the parent that will be used to try to resolve theme messages that this object can't resolve.
      Specified by:
      setParentThemeSource in interface HierarchicalThemeSource
      Parameters:
      parent - the parent ThemeSource that will be used to resolve messages that this object can't resolve. May be null, in which case no further resolution is possible.
    • getParentThemeSource

      @Nullable public ThemeSource getParentThemeSource()
      Deprecated.
      Description copied from interface: HierarchicalThemeSource
      Return the parent of this ThemeSource, or null if none.
      Specified by:
      getParentThemeSource in interface HierarchicalThemeSource
    • setBasenamePrefix

      public void setBasenamePrefix(@Nullable String basenamePrefix)
      Deprecated.
      Set the prefix that gets applied to the ResourceBundle basenames, i.e. the theme names. E.g.: basenamePrefix="test.", themeName="theme" → basename="test.theme".

      Note that ResourceBundle names are effectively classpath locations: As a consequence, the JDK's standard ResourceBundle treats dots as package separators. This means that "test.theme" is effectively equivalent to "test/theme", just like it is for programmatic java.util.ResourceBundle usage.

      See Also:
    • setDefaultEncoding

      public void setDefaultEncoding(@Nullable String defaultEncoding)
      Deprecated.
      Set the default charset to use for parsing resource bundle files.

      ResourceBundleMessageSource's default is the java.util.ResourceBundle default encoding: ISO-8859-1.

      Since:
      4.2
      See Also:
    • setFallbackToSystemLocale

      public void setFallbackToSystemLocale(boolean fallbackToSystemLocale)
      Deprecated.
      Set whether to fall back to the system Locale if no files for a specific Locale have been found.

      ResourceBundleMessageSource's default is "true".

      Since:
      4.2
      See Also:
    • setBeanClassLoader

      public void setBeanClassLoader(@Nullable ClassLoader beanClassLoader)
      Deprecated.
      Description copied from interface: BeanClassLoaderAware
      Callback that supplies the bean class loader to a bean instance.

      Invoked after the population of normal bean properties but before an initialization callback such as InitializingBean's InitializingBean.afterPropertiesSet() method or a custom init-method.

      Specified by:
      setBeanClassLoader in interface BeanClassLoaderAware
      Parameters:
      beanClassLoader - the owning class loader
    • getTheme

      @Nullable public Theme getTheme(String themeName)
      Deprecated.
      This implementation returns a SimpleTheme instance, holding a ResourceBundle-based MessageSource whose basename corresponds to the given theme name (prefixed by the configured "basenamePrefix").

      SimpleTheme instances are cached per theme name. Use a reloadable MessageSource if themes should reflect changes to the underlying files.

      Specified by:
      getTheme in interface ThemeSource
      Parameters:
      themeName - the name of the theme
      Returns:
      the corresponding Theme, or null if none defined. Note that, by convention, a ThemeSource should at least be able to return a default Theme for the default theme name "theme" but may also return default Themes for other theme names.
      See Also:
    • createMessageSource

      protected MessageSource createMessageSource(String basename)
      Deprecated.
      Create a MessageSource for the given basename, to be used as MessageSource for the corresponding theme.

      Default implementation creates a ResourceBundleMessageSource. for the given basename. A subclass could create a specifically configured ReloadableResourceBundleMessageSource, for example.

      Parameters:
      basename - the basename to create a MessageSource for
      Returns:
      the MessageSource
      See Also:
    • initParent

      protected void initParent(Theme theme)
      Deprecated.
      Initialize the MessageSource of the given theme with the one from the corresponding parent of this ThemeSource.
      Parameters:
      theme - the Theme to (re-)initialize