Class ICUResourceBundle
java.lang.Object
java.util.ResourceBundle
org.graalvm.shadowed.com.ibm.icu.util.UResourceBundle
org.graalvm.shadowed.com.ibm.icu.impl.ICUResourceBundle
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumprotected static final classFields for a whole bundle, rather than any specific resource in the bundle.Nested classes/interfaces inherited from class ResourceBundle
ResourceBundle.Control -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intResource type constant for aliases; internally stores a string which identifies the actual resource storing the data (can be in a different resource bundle).static final intResource type constant for arrays with 16-bit count and values.static final ClassLoaderThe class loader constant to be used with getBundleInstance APIprotected static final StringThe name of the resource containing the installed localesprotected StringData member where the subclasses store the key.static final StringCLDR string value "∅∅∅" prevents fallback to the parent bundle.static final intA resource word value that means "no resource".static final intResource type constant for 16-bit Unicode strings in formatVersion 2.static final intResource type constant for tables with 16-bit count, key offsets and values.static final intResource type constant for tables with 32-bit count, key offsets and values.Fields inherited from class UResourceBundle
ARRAY, BINARY, INT, INT_VECTOR, NONE, STRING, TABLEFields inherited from class ResourceBundle
parent -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedICUResourceBundle(ICUResourceBundle.WholeBundle wholeBundle) Constructor for the root table of a bundle.protectedICUResourceBundle(ICUResourceBundle container, String key) -
Method Summary
Modifier and TypeMethodDescriptionat(int index) static ICUResourceBundlecreateBundle(String baseName, String localeID, ClassLoader root) Create a bundle using a reader.booleanfindStringWithFallback(String path) findTopLevel(int index) Returns a resource in a given resource that has a given index, or null if the resource is not found.findTopLevel(String aKey) Returns a resource in a given resource that has a given key, or null if the resource is not found.findWithFallback(String path) Like getWithFallback, but returns null if the resource is not found instead of throwing an exception.protected static ICUResourceBundlegetAliasedResource(String rpath, ClassLoader loaderToUse, String baseName, String[] keys, int depth, String[] baseKeyPath, HashMap<String, String> aliasesVisited, UResourceBundle requested) protected static ICUResourceBundlegetAliasedResource(ICUResourceBundle base, String[] keys, int depth, String key, int _resource, HashMap<String, String> aliasesVisited, UResourceBundle requested) Returns the resource object referred to from the alias _resource int's path string.voidgetAllChildrenWithFallback(String path, UResource.Sink sink) Locates the resource specified bypathin this resource bundle (performing any necessary fallback and following any aliases) and, if the resource is a table resource, iterates over its immediate child resources (again, following any aliases to get the individual resource values), and calls the specifiedsink'sput()method for each child resource (passing it that resource's key and either its actual value or, if that value is an alias, the value you get by following the alias).voidgetAllItemsWithFallback(String path, UResource.Sink sink) Locates the resource specified bypathin this resource bundle (performing any necessary fallback and following any aliases) and calls the specifiedsink'sput()method with that resource.voidgetAllItemsWithFallbackNoFail(String path, UResource.Sink sink) Return a set of the locale names supported by a collection of resource bundles.getAvailableLocaleNameSet(String bundlePrefix, ClassLoader loader) Return a set of the locale names supported by a collection of resource bundles.static final Locale[]Get the set of ULocales installed the base bundle.static final Locale[]getAvailableLocales(String baseName, ClassLoader loader) Get the set of Locales installed in the specified bundles.static final Locale[]getAvailableLocales(String baseName, ClassLoader loader, ULocale.AvailableType type) Get the set of Locales installed in the specified bundles, for the specified type.static final Locale[]Get the set of Locales installed the base bundle, for the specified type.static final ULocale[]Get the set of ULocales installed the base bundle.static final ULocale[]getAvailableULocales(String baseName, ClassLoader loader) Get the set of Locales installed in the specified bundles.static final ULocale[]getAvailableULocales(String baseName, ClassLoader loader, ULocale.AvailableType type) Get the set of Locales installed in the specified bundles, for the specified type.static final ULocale[]Get the set of ULocales installed the base bundle, for the specified type.protected StringReturns the base name of the resource bundlestatic ICUResourceBundlegetBundleInstance(String baseName, String localeID, ClassLoader root, boolean disableFallback) static ICUResourceBundlegetBundleInstance(String baseName, String localeID, ClassLoader root, ICUResourceBundle.OpenType openType) static ICUResourceBundlegetBundleInstance(String baseName, ULocale locale, ICUResourceBundle.OpenType openType) Return a set of all the locale names supported by a collection of resource bundles.getFullLocaleNameSet(String bundlePrefix, ClassLoader loader) Return a set of all the locale names supported by a collection of resource bundles.static final ULocalegetFunctionalEquivalent(String baseName, ClassLoader loader, String resName, String keyword, ULocale locID, boolean[] isAvailable, boolean omitDefault) Returns a functionally equivalent locale, considering keywords as well, for the specified keyword.getKey()Returns the key associated with a given resource.static final String[]getKeywordValues(String baseName, String keyword) Given a tree path and keyword, return a string enumeration of all possible values for that keyword.Returns the locale of this resource bundle.protected StringReturns the localeIDstatic final Locale[]getLocaleList(ULocale[] ulocales) Convert a list of ULocales to a list of Locales.Returns the parent bundlestatic StringgetParentLocaleID(String name, String origName, ICUResourceBundle.OpenType openType) getStringWithFallback(String path) Deprecated.This API is ICU internal only.Returns the RFC 3066 conformant locale id of this resource bundle.getValueWithFallback(String path) getWithFallback(String path) This method performs multilevel fallback for fetching items from the bundle e.g: If resource is in the form de__PHONEBOOK{ collations{ default{ "phonebook"} } } If the value of "default" key needs to be accessed, then do:UResourceBundle bundle = UResourceBundle.getBundleInstance("de__PHONEBOOK"); ICUResourceBundle result = null; if(bundle instanceof ICUResourceBundle){ result = ((ICUResourceBundle) bundle).getWithFallback("collations/default"); }protected Enumeration<String> Actual worker method for fetching the keys of resources contained in the resource.inthashCode()booleanisRoot()Returns true if this is the root bundle, or an item in the root bundle.protected booleanIs this a top-level resource, that is, a whole bundle?protected voidsetParent(ResourceBundle parent) final voidsetTopLevelKeySet(Set<String> keySet) Deprecated.This API is ICU internal only.Methods inherited from class UResourceBundle
get, get, getBinary, getBinary, getBundleInstance, getBundleInstance, getBundleInstance, getBundleInstance, getBundleInstance, getBundleInstance, getBundleInstance, getBundleInstance, getInt, getIntVector, getIterator, getKeys, getSize, getString, getString, getStringArray, getType, getUInt, getVersion, handleGet, handleGet, handleGetObject, handleGetStringArray, handleKeySet, instantiateBundle, keySetMethods inherited from class ResourceBundle
clearCache, clearCache, containsKey, getBaseBundleName, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getObject, getString, getStringArray
-
Field Details
-
NO_INHERITANCE_MARKER
CLDR string value "∅∅∅" prevents fallback to the parent bundle.- See Also:
-
ICU_DATA_CLASS_LOADER
The class loader constant to be used with getBundleInstance API -
INSTALLED_LOCALES
The name of the resource containing the installed locales- See Also:
-
key
Data member where the subclasses store the key. -
RES_BOGUS
public static final int RES_BOGUSA resource word value that means "no resource". Note: 0xffffffff == -1 This has the same value as UResourceBundle.NONE, but they are semantically different and should be used appropriately according to context: NONE means "no type". (The type of RES_BOGUS is RES_RESERVED=15 which was defined in ICU4C ures.h.)- See Also:
-
ALIAS
public static final int ALIASResource type constant for aliases; internally stores a string which identifies the actual resource storing the data (can be in a different resource bundle). Resolved internally before delivering the actual resource through the API.- See Also:
-
TABLE32
public static final int TABLE32Resource type constant for tables with 32-bit count, key offsets and values.- See Also:
-
TABLE16
public static final int TABLE16Resource type constant for tables with 16-bit count, key offsets and values. All values are STRING_V2 strings.- See Also:
-
STRING_V2
public static final int STRING_V2Resource type constant for 16-bit Unicode strings in formatVersion 2.- See Also:
-
ARRAY16
public static final int ARRAY16Resource type constant for arrays with 16-bit count and values. All values are STRING_V2 strings.- See Also:
-
-
Constructor Details
-
ICUResourceBundle
Constructor for the root table of a bundle. -
ICUResourceBundle
-
-
Method Details
-
getFunctionalEquivalent
public static final ULocale getFunctionalEquivalent(String baseName, ClassLoader loader, String resName, String keyword, ULocale locID, boolean[] isAvailable, boolean omitDefault) Returns a functionally equivalent locale, considering keywords as well, for the specified keyword.- Parameters:
baseName- resource specifierresName- top level resource to consider (such as "collations")keyword- a particular keyword to consider (such as "collation" )locID- The requested localeisAvailable- If non-null, 1-element array of fillin parameter that indicates whether the requested locale was available. The locale is defined as 'available' if it physically exists within the specified tree and included in 'InstalledLocales'.omitDefault- if true, omit keyword and value if default. 'de_DE\@collation=standard' -> 'de_DE'- Returns:
- the locale
-
getKeywordValues
Given a tree path and keyword, return a string enumeration of all possible values for that keyword.- Parameters:
baseName- resource specifierkeyword- a particular keyword to consider, must match a top level resource name within the tree. (i.e. "collations")
-
getWithFallback
This method performs multilevel fallback for fetching items from the bundle e.g: If resource is in the form de__PHONEBOOK{ collations{ default{ "phonebook"} } } If the value of "default" key needs to be accessed, then do:UResourceBundle bundle = UResourceBundle.getBundleInstance("de__PHONEBOOK"); ICUResourceBundle result = null; if(bundle instanceof ICUResourceBundle){ result = ((ICUResourceBundle) bundle).getWithFallback("collations/default"); }- Parameters:
path- The path to the required resource key- Returns:
- resource represented by the key
- Throws:
MissingResourceException- If a resource was not found.
-
at
-
at
-
findTopLevel
Description copied from class:UResourceBundleReturns a resource in a given resource that has a given index, or null if the resource is not found.- Overrides:
findTopLevelin classUResourceBundle- Parameters:
index- the index of the resource- Returns:
- the resource, or null
- See Also:
-
findTopLevel
Description copied from class:UResourceBundleReturns a resource in a given resource that has a given key, or null if the resource is not found.- Overrides:
findTopLevelin classUResourceBundle- Parameters:
aKey- the key associated with the wanted resource- Returns:
- the resource, or null
- See Also:
-
findWithFallback
Like getWithFallback, but returns null if the resource is not found instead of throwing an exception.- Parameters:
path- the path to the resource- Returns:
- the resource, or null
-
findStringWithFallback
-
getStringWithFallback
- Throws:
MissingResourceException
-
getValueWithFallback
- Throws:
MissingResourceException
-
getAllItemsWithFallbackNoFail
-
getAllItemsWithFallback
public void getAllItemsWithFallback(String path, UResource.Sink sink) throws MissingResourceException Locates the resource specified bypathin this resource bundle (performing any necessary fallback and following any aliases) and calls the specifiedsink'sput()method with that resource. Then walks the bundle's parent chain, callingput()on the sink for each item in the parent chain.- Parameters:
path- The path of the desired resourcesink- AUResource.Sinkthat gets called for each resource in the parent chain- Throws:
MissingResourceException
-
getAllChildrenWithFallback
public void getAllChildrenWithFallback(String path, UResource.Sink sink) throws MissingResourceException Locates the resource specified bypathin this resource bundle (performing any necessary fallback and following any aliases) and, if the resource is a table resource, iterates over its immediate child resources (again, following any aliases to get the individual resource values), and calls the specifiedsink'sput()method for each child resource (passing it that resource's key and either its actual value or, if that value is an alias, the value you get by following the alias). Then walks back over the bundle's parent chain, similarly iterating over each parent table resource's child resources. Does not descend beyond one level of table children.- Parameters:
path- The path of the desired resourcesink- AUResource.Sinkthat gets called for each child resource of the specified resource (and each child of the resources in its parent chain).- Throws:
MissingResourceException
-
getAvailableLocaleNameSet
Return a set of the locale names supported by a collection of resource bundles.- Parameters:
bundlePrefix- the prefix of the resource bundles to use.
-
getFullLocaleNameSet
-
getFullLocaleNameSet
Return a set of all the locale names supported by a collection of resource bundles.- Parameters:
bundlePrefix- the prefix of the resource bundles to use.
-
getAvailableLocaleNameSet
-
getAvailableULocales
public static final ULocale[] getAvailableULocales(String baseName, ClassLoader loader, ULocale.AvailableType type) Get the set of Locales installed in the specified bundles, for the specified type.- Returns:
- the list of available locales
-
getAvailableULocales
Get the set of ULocales installed the base bundle.- Returns:
- the list of available locales
-
getAvailableULocales
Get the set of ULocales installed the base bundle, for the specified type.- Returns:
- the list of available locales for the specified type
-
getAvailableULocales
Get the set of Locales installed in the specified bundles.- Returns:
- the list of available locales
-
getAvailableLocales
public static final Locale[] getAvailableLocales(String baseName, ClassLoader loader, ULocale.AvailableType type) Get the set of Locales installed in the specified bundles, for the specified type.- Returns:
- the list of available locales
-
getAvailableLocales
Get the set of ULocales installed the base bundle.- Returns:
- the list of available locales
-
getAvailableLocales
Get the set of Locales installed the base bundle, for the specified type.- Returns:
- the list of available locales
-
getAvailableLocales
Get the set of Locales installed in the specified bundles.- Returns:
- the list of available locales
-
getLocaleList
Convert a list of ULocales to a list of Locales. ULocales with a script code will not be converted since they cannot be represented as a Locale. This means that the two lists will not match one-to-one, and that the returned list might be shorter than the input list.- Parameters:
ulocales- a list of ULocales to convert to a list of Locales.- Returns:
- the list of converted ULocales
-
getLocale
Returns the locale of this resource bundle. This method can be used after a call to getBundle() to determine whether the resource bundle returned really corresponds to the requested locale or is a fallback.- Overrides:
getLocalein classUResourceBundle- Returns:
- the locale of this resource bundle
-
equals
-
hashCode
-
getBundleInstance
public static ICUResourceBundle getBundleInstance(String baseName, String localeID, ClassLoader root, boolean disableFallback) -
getBundleInstance
public static ICUResourceBundle getBundleInstance(String baseName, ULocale locale, ICUResourceBundle.OpenType openType) -
getBundleInstance
public static ICUResourceBundle getBundleInstance(String baseName, String localeID, ClassLoader root, ICUResourceBundle.OpenType openType) -
getParentLocaleID
public static String getParentLocaleID(String name, String origName, ICUResourceBundle.OpenType openType) -
createBundle
Create a bundle using a reader.- Parameters:
baseName- The name for the bundle.localeID- The locale identification.root- The ClassLoader object root.- Returns:
- the new bundle
-
getLocaleID
Description copied from class:UResourceBundleReturns the localeID- Specified by:
getLocaleIDin classUResourceBundle- Returns:
- The string representation of the localeID
-
getBaseName
Description copied from class:UResourceBundleReturns the base name of the resource bundle- Specified by:
getBaseNamein classUResourceBundle- Returns:
- The string representation of the base name
-
getULocale
Description copied from class:UResourceBundleReturns the RFC 3066 conformant locale id of this resource bundle. This method can be used after a call to getBundleInstance() to determine whether the resource bundle returned really corresponds to the requested locale or is a fallback.- Specified by:
getULocalein classUResourceBundle- Returns:
- the locale of this resource bundle
-
isRoot
public boolean isRoot()Returns true if this is the root bundle, or an item in the root bundle. -
getParent
Description copied from class:UResourceBundleReturns the parent bundle- Specified by:
getParentin classUResourceBundle- Returns:
- The parent bundle
-
setParent
- Overrides:
setParentin classResourceBundle
-
getKey
Description copied from class:UResourceBundleReturns the key associated with a given resource. Not all the resources have a key - only those that are members of a table.- Overrides:
getKeyin classUResourceBundle- Returns:
- a key associated to this resource, or null if it doesn't have a key
-
getAliasedResource
protected static ICUResourceBundle getAliasedResource(ICUResourceBundle base, String[] keys, int depth, String key, int _resource, HashMap<String, String> aliasesVisited, UResourceBundle requested) Returns the resource object referred to from the alias _resource int's path string. Throws MissingResourceException if not found. If the alias path does not contain a key path: If keys != null then keys[:depth] is used. Otherwise the base key path plus the key parameter is used.- Parameters:
base- A direct or indirect container of the alias.keys- The key path to the alias, or null. (const)depth- The length of the key path, if keys != null.key- The alias' own key within this current container, if keys == null._resource- The alias resource int.aliasesVisited- Set of alias path strings already visited, for detecting loops. We cannot change the type (e.g., to Set) because it is used in protected/@stable UResourceBundle methods. requested- The original resource object from which the lookup started, which is the starting point for "/LOCALE/..." aliases.- Returns:
- the aliased resource object
-
getAliasedResource
protected static ICUResourceBundle getAliasedResource(String rpath, ClassLoader loaderToUse, String baseName, String[] keys, int depth, String[] baseKeyPath, HashMap<String, String> aliasesVisited, UResourceBundle requested) -
getTopLevelKeySet
Deprecated.This API is ICU internal only. -
setTopLevelKeySet
Deprecated.This API is ICU internal only. -
handleGetKeys
Description copied from class:UResourceBundleActual worker method for fetching the keys of resources contained in the resource. Sub classes must override this method if they support keys and associated resources.- Overrides:
handleGetKeysin classUResourceBundle- Returns:
- Enumeration An enumeration of all the keys in this resource.
-
isTopLevelResource
protected boolean isTopLevelResource()Description copied from class:UResourceBundleIs this a top-level resource, that is, a whole bundle?- Overrides:
isTopLevelResourcein classUResourceBundle- Returns:
- true if this is a top-level resource
-