Package org.apache.struts2.text
Class TextProviderSupport
java.lang.Object
org.apache.struts2.text.TextProviderSupport
- All Implemented Interfaces:
ResourceBundleTextProvider
,TextProvider
Default TextProvider implementation.
- Author:
- Jason Carreira, Rainer Hermanns
-
Field Summary
Modifier and TypeFieldDescriptionprotected ResourceBundle
protected Class<?>
protected LocaleProvider
protected LocalizedTextProvider
-
Constructor Summary
ConstructorDescriptionTextProviderSupport
(Class<?> clazz, LocaleProvider provider, LocalizedTextProvider localizedTextProvider) Constructor.TextProviderSupport
(ResourceBundle bundle, LocaleProvider provider, LocalizedTextProvider localizedTextProvider) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionGet a text from the resource bundles associated with this action.Get a text from the resource bundles associated with this action.Get a text from the resource bundles associated with this action.Get a text from the resource bundles associated with this action.Get a text from the resource bundles associated with this action.getText
(String key, String defaultValue, String[] args, ValueStack stack) Gets a message based on a key using the supplied args, as defined inMessageFormat
, or, if the message is not found, a supplied default value is returned.Get a text from the resource bundles associated with this action.getText
(String key, String defaultValue, List<?> args, ValueStack stack) Gets a message based on a key using the supplied args, as defined inMessageFormat
, or, if the message is not found, a supplied default value is returned.Get a text from the resource bundles associated with this action.getTexts()
Get the resource bundle associated with this action.Get the named bundle.boolean
Checks if a key is available in the resource bundles associated with this action.void
setBundle
(ResourceBundle bundle) Set the resource bundle to use.void
Set the class to use for reading the resource bundle.void
setLocaleProvider
(LocaleProvider localeProvider) Set the LocaleProvider to use.void
setLocaleProviderFactory
(LocaleProviderFactory localeProviderFactory) void
setLocalizedTextProvider
(LocalizedTextProvider localizedTextProvider)
-
Field Details
-
clazz
-
localeProvider
-
bundle
-
localizedTextProvider
-
-
Constructor Details
-
TextProviderSupport
public TextProviderSupport(Class<?> clazz, LocaleProvider provider, LocalizedTextProvider localizedTextProvider) Constructor.- Parameters:
clazz
- a clazz to use for reading the resource bundle.provider
- a locale provider.
-
TextProviderSupport
public TextProviderSupport(ResourceBundle bundle, LocaleProvider provider, LocalizedTextProvider localizedTextProvider) Constructor.- Parameters:
bundle
- the resource bundle.provider
- a locale provider.
-
-
Method Details
-
setBundle
Description copied from interface:ResourceBundleTextProvider
Set the resource bundle to use.- Specified by:
setBundle
in interfaceResourceBundleTextProvider
- Parameters:
bundle
- the resource bundle.
-
setClazz
Description copied from interface:ResourceBundleTextProvider
Set the class to use for reading the resource bundle.- Specified by:
setClazz
in interfaceResourceBundleTextProvider
- Parameters:
clazz
- a clazz to use for reading the resource bundle.
-
setLocaleProvider
Description copied from interface:ResourceBundleTextProvider
Set the LocaleProvider to use.- Specified by:
setLocaleProvider
in interfaceResourceBundleTextProvider
- Parameters:
localeProvider
- a locale provider.
-
setLocaleProviderFactory
-
setLocalizedTextProvider
-
hasKey
Checks if a key is available in the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class.- Specified by:
hasKey
in interfaceTextProvider
- Parameters:
key
- message key to check for- Returns:
- boolean true if key exists, false otherwise.
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be found- Returns:
- value of named text or the provided key if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be founddefaultValue
- the default value which will be returned if no text is found- Returns:
- value of named text or the provided defaultValue if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be founddefaultValue
- the default value which will be returned if no text is foundarg
- obj to be used in aMessageFormat
message- Returns:
- value of named text or the provided defaultValue if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be foundargs
- a List of args to be used in a MessageFormat message- Returns:
- value of named text or the provided key if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be foundargs
- an array of args to be used in a MessageFormat message- Returns:
- value of named text or the provided key if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be founddefaultValue
- the default value which will be returned if no text is foundargs
- a List of args to be used in a MessageFormat message- Returns:
- value of named text or the provided defaultValue if no value is found
-
getText
Get a text from the resource bundles associated with this action. The resource bundles are searched, starting with the one associated with this particular action, and testing all its superclasses' bundles. It will stop once a bundle is found that contains the given text. This gives a cascading style that allow global texts to be defined for an application base class. If no text is found for this text name, the default value is returned.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- name of text to be founddefaultValue
- the default value which will be returned if no text is foundargs
- an array of args to be used in a MessageFormat message- Returns:
- value of named text or the provided defaultValue if no value is found
-
getText
Gets a message based on a key using the supplied args, as defined inMessageFormat
, or, if the message is not found, a supplied default value is returned. Instead of using the value stack in the ActionContext this version of the getText() method uses the provided value stack.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- the resource bundle key that is to be searched fordefaultValue
- the default value which will be returned if no message is foundargs
- a list args to be used in aMessageFormat
messagestack
- the value stack to use for finding the text- Returns:
- the message as found in the resource bundle, or defaultValue if none is found
-
getText
Gets a message based on a key using the supplied args, as defined inMessageFormat
, or, if the message is not found, a supplied default value is returned. Instead of using the value stack in the ActionContext this version of the getText() method uses the provided value stack.- Specified by:
getText
in interfaceTextProvider
- Parameters:
key
- the resource bundle key that is to be searched fordefaultValue
- the default value which will be returned if no message is foundargs
- an array args to be used in aMessageFormat
messagestack
- the value stack to use for finding the text- Returns:
- the message as found in the resource bundle, or defaultValue if none is found
-
getTexts
Get the named bundle.You can override the getLocale() methodName to change the behaviour of how to choose locale for the bundles that are returned. Typically you would use the TextProvider interface to get the users configured locale, or use your own methodName to allow the user to select the locale and store it in the session (by using the SessionAware interface).
- Specified by:
getTexts
in interfaceTextProvider
- Parameters:
aBundleName
- bundle name- Returns:
- a resource bundle
-
getTexts
Get the resource bundle associated with this action. This will be based on the actual subclass that is used.- Specified by:
getTexts
in interfaceTextProvider
- Returns:
- resouce bundle
-