]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.cms/src/org/argeo/cms/DefaultsResourceBundle.java
3 import java
.lang
.reflect
.Field
;
4 import java
.lang
.reflect
.Modifier
;
5 import java
.util
.Enumeration
;
6 import java
.util
.ResourceBundle
;
7 import java
.util
.Vector
;
9 /** Expose the default values as a {@link ResourceBundle} */
10 public class DefaultsResourceBundle
extends ResourceBundle
{
13 protected Object
handleGetObject(String key
) {
16 Field field
= getClass().getField(key
);
17 obj
= field
.getType().getMethod("getDefault")
18 .invoke(field
.get(null));
19 } catch (Exception e
) {
20 throw new CmsException("Cannot get default for " + key
, e
);
26 public Enumeration
<String
> getKeys() {
27 Vector
<String
> res
= new Vector
<String
>();
28 final Field
[] fieldArray
= getClass().getDeclaredFields();
30 for (Field field
: fieldArray
) {
31 if (Modifier
.isStatic(field
.getModifiers())
32 && field
.getType().isAssignableFrom(Msg
.class)) {
33 res
.add(field
.getName());
36 return res
.elements();