org.springframework.ui.context.support
Class ResourceBundleThemeSource

java.lang.Object
  extended byorg.springframework.ui.context.support.ResourceBundleThemeSource
All Implemented Interfaces:
HierarchicalThemeSource, ThemeSource

public class ResourceBundleThemeSource
extends Object
implements HierarchicalThemeSource

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:
setBasenamePrefix(java.lang.String)

Field Summary
protected  Log logger
           
 
Constructor Summary
ResourceBundleThemeSource()
           
 
Method Summary
 ThemeSource getParentThemeSource()
          Return the parent of this ThemeSource, or null if none.
 Theme getTheme(String themeName)
          Return the Theme instance for the given theme name.
protected  void initParent(Theme theme)
          Initialize the MessageSource of the given theme with the one from the respective parentThemeSource of this ThemeSource.
 void setBasenamePrefix(String basenamePrefix)
          Set the prefix that gets applied to the ResourceBundle basenames, i.e. the theme names.
 void setParentThemeSource(ThemeSource parent)
          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 Detail

logger

protected final Log logger
Constructor Detail

ResourceBundleThemeSource

public ResourceBundleThemeSource()
Method Detail

setParentThemeSource

public void setParentThemeSource(ThemeSource parent)
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 - 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

public ThemeSource getParentThemeSource()
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(String basenamePrefix)
Set the prefix that gets applied to the ResourceBundle basenames, i.e. the theme names. E.g.: basenamePrefix="test.", themeName="theme" -> basename="test.theme".

Parameters:
basenamePrefix - prefix for ResourceBundle basenames

getTheme

public Theme getTheme(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 - name of the theme
Returns:
the respective Theme, or null if none defined

initParent

protected void initParent(Theme theme)
Initialize the MessageSource of the given theme with the one from the respective parentThemeSource of this ThemeSource.



Copyright (C) 2003-2004 The Spring Framework Project.