org.springframework.ui.context.support

Class DelegatingThemeSource

  • java.lang.Object
    • org.springframework.ui.context.support.DelegatingThemeSource
  • All Implemented Interfaces:
    HierarchicalThemeSource, ThemeSource


    public class DelegatingThemeSource
    extends java.lang.Object
    implements HierarchicalThemeSource
    Empty ThemeSource that delegates all calls to the parent ThemeSource. If no parent is available, it simply won't resolve any theme.

    Used as placeholder by UiApplicationContextUtils, if a context doesn't define its own ThemeSource. Not intended for direct use in applications.

    Since:
    1.2.4
    Author:
    Juergen Hoeller
    See Also:
    UiApplicationContextUtils
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      ThemeSource getParentThemeSource()
      Return the parent of this ThemeSource, or null if none.
      Theme getTheme(java.lang.String themeName)
      Return the Theme instance for the given theme name.
      void setParentThemeSource(ThemeSource parentThemeSource)
      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
    • Constructor Detail

      • DelegatingThemeSource

        public DelegatingThemeSource()
    • Method Detail

      • setParentThemeSource

        public void setParentThemeSource(@Nullable
                                         ThemeSource parentThemeSource)
        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:
        parentThemeSource - 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.
      • getTheme

        @Nullable
        public Theme getTheme(java.lang.String themeName)
        Description copied from interface: ThemeSource
        Return the Theme instance for the given theme name.

        The returned Theme will resolve theme-specific messages, codes, file paths, etc (e.g. CSS and image files in a web environment).

        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:
        AbstractThemeResolver.ORIGINAL_DEFAULT_THEME_NAME