| java.lang.Object org.mmbase.util.SortedBundle
SortedBundle | public class SortedBundle (Code) | | A bit like
java.util.ResourceBundle (on which it is based), but it creates
SortedMap's. The order of the entries of the Map can be influenced in tree ways. You can
associate the keys with JAVA constants (and their natural ordering can be used), you can wrap the
keys in a 'wrapper' (which can be of any type, the sole restriction being that there is a
constructor with String argument or of the type of the assiocated JAVA constant if that happened
too, and the natural order of the wrapper can be used (a wrapper of some Number type would be
logical). Finally you can also explicitely specify a
java.util.Comparator if no natural
order is good.
author: Michiel Meeuwissen since: MMBase-1.8 version: $Id: SortedBundle.java,v 1.31 2008/02/03 17:33:57 nklasens Exp $ |
Inner Class :public static class ValueWrapper implements Comparable<ValueWrapper> | |
Method Summary | |
public static Object | castKey(String bundleKey, Object value, Map<String, Object> constantsProvider, Class> wrapper) | protected static Object | castKey(String bundleKey, Object value, Map<String, Object> constantsProvider, Class> wrapper, Locale locale) Casts a key of the bundle to the specified key-type. | public static HashMap<String, Object> | getConstantsProvider(Class> clazz) Returns a (serializable) Map representing all accessible static public members of given class (so, all constants). | public static SortedMap<Object, Object> | getResource(String baseName, Locale locale, ClassLoader loader, Map<String, Object> constantsProvider, Class> wrapper, Comparator<? super Object> comparator) Parameters: baseName - A string identifying the resource. |
getConstantsProvider | public static HashMap<String, Object> getConstantsProvider(Class> clazz)(Code) | | Returns a (serializable) Map representing all accessible static public members of given class (so, all constants).
since: MMBase-1.8 |
getResource | public static SortedMap<Object, Object> getResource(String baseName, Locale locale, ClassLoader loader, Map<String, Object> constantsProvider, Class> wrapper, Comparator<? super Object> comparator)(Code) | | Parameters: baseName - A string identifying the resource. See java.util.ResourceBundle.getBundle(java.lang.Stringjava.util.Localejava.lang.ClassLoader) for an explanation of this string. Parameters: locale - the locale for which a resource bundle is desired Parameters: loader - the class loader from which to load the resource bundle Parameters: constantsProvider - A map representing constants for the value. Can be based on a class using SortedBundle.getConstantsProvider(Class), then the class's constants ar used to associate with the elements of this resource. Parameters: wrapper - the keys will be wrapped in objects of this type (which must have aconstructor with the right type (String, or otherwise the type of the variable given by the constantsProvider), and must be Comparable.You could specify e.g. Integer.class if the keys of themap are meant to be integers. This can be null , in which case the keys will remain unwrapped (and therefore String). Parameters: comparator - the elements will be sorted (by key) using this comparator or by natural key order if this is null . throws: NullPointerException - if baseName or locale is null (not if loader is null ) throws: MissingResourceException - if no resource bundle for the specified base name can be found throws: IllegalArgumentExcpetion - if wrapper is not Comparable. |
|
|