Package org.alfresco.repo.i18n
Interface MessageService
- All Superinterfaces:
MessageLookup,TenantDeployer
- All Known Implementing Classes:
MessageServiceImpl
Utility class providing methods to access the Locale of the current thread and to get Localised strings. These strings may be loaded from resource bundles deployed in the Repository.
-
Method Summary
Modifier and TypeMethodDescriptiongetBaseBundleName(String resourceName) Get the content local for the current thread.
This will revert togetLocale()if no value has been defined.Get the general local for the current thread, will revert to the default locale if none specified for this thread.getNearestLocale(Locale templateLocale, Set<Locale> options) Searches for the nearest locale from the available options.Get set of registered message resource bundlesgetRepoResourceBundle(StoreRef storeRef, String path, Locale locale) Get message resource bundle from the repository note: also used by Web Client (ResourceBundleWrapper)parseLocale(String localeStr) Factory method to create a Locale from a lang_country_variant string.voidregister(MessageDeployer messageDeployer) Register message deployer with message servicevoidregisterResourceBundle(String bundleBasePath) Register a resource bundle.voidsetContentLocale(Locale locale) Set the content locale for the current thread.voidSet the locale for the current thread.voidunregisterResourceBundle(String resBundlePath) Unregister a resource bundleMethods inherited from interface org.alfresco.service.cmr.i18n.MessageLookup
getMessage, getMessage, getMessage, getMessageMethods inherited from interface org.alfresco.repo.tenant.TenantDeployer
destroy, init, onDisableTenant, onEnableTenant
-
Method Details
-
setLocale
Set the locale for the current thread.- Parameters:
locale- the locale
-
getLocale
Locale getLocale()Get the general local for the current thread, will revert to the default locale if none specified for this thread.- Returns:
- the general locale
-
setContentLocale
Set the content locale for the current thread.- Parameters:
locale- the content locale
-
getContentLocale
Locale getContentLocale()Get the content local for the current thread.
This will revert togetLocale()if no value has been defined.- Returns:
- Returns the content locale
-
getNearestLocale
Searches for the nearest locale from the available options. To match any locale, pass in null.- Parameters:
templateLocale- the template to search for or null to match any localeoptions- the available locales to search from- Returns:
- Returns the best match from the available options, or the null if all matches fail
-
parseLocale
Factory method to create a Locale from a lang_country_variant string.- Parameters:
localeStr- e.g. fr_FR- Returns:
- Returns the locale instance, or the
defaultif the string is invalid
-
registerResourceBundle
Register a resource bundle.This should be the bundle base path eg, alfresco/messages/errors or, workspace://SpaceStore/app:company_home/app:dictionary/app:labels/cm:errors
Once registered the messages will be available via getMessage, assuming the bundle resource exists at the given path location.
- Parameters:
bundleBasePath- the bundle base path
-
unregisterResourceBundle
Unregister a resource bundleThis should be the bundle base path eg alfresco/messages/errors or workspace://SpaceStore/app:company_home/app:dictionary/app:labels/cm:errors
Once unregistered the messages will no longer be available via getMessage
- Parameters:
resBundlePath- the bundle base path
-
getRepoResourceBundle
ResourceBundle getRepoResourceBundle(StoreRef storeRef, String path, Locale locale) throws IOException Get message resource bundle from the repository note: also used by Web Client (ResourceBundleWrapper)- Parameters:
storeRef- store refpath- repository path (XPath)locale- locale- Returns:
- input stream
- Throws:
IOException
-
getRegisteredBundles
Get set of registered message resource bundles- Returns:
- set of registered bundles
-
register
Register message deployer with message service- Parameters:
messageDeployer- MessageDeployer
-
getBaseBundleName
-