1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krad.keyvalues;
17
18 import java.util.ArrayList;
19 import java.util.List;
20
21 import org.apache.commons.lang.WordUtils;
22 import org.kuali.rice.core.api.util.ConcreteKeyValue;
23 import org.kuali.rice.core.api.util.KeyValue;
24
25
26
27
28
29
30 public class EnumValuesFinder extends KeyValuesBase {
31 private Class<? extends Enum> enumeration;
32
33 public EnumValuesFinder(Class<? extends Enum> enumeration) {
34 this.enumeration = enumeration;
35 }
36
37 @Override
38 public List<KeyValue> getKeyValues() {
39 List<KeyValue> labels = new ArrayList<KeyValue>();
40 for (Enum enumval: enumeration.getEnumConstants()) {
41 labels.add(new ConcreteKeyValue(getEnumKey(enumval), getEnumLabel(enumval)));
42 }
43 return labels;
44 }
45
46
47
48
49 protected String getEnumKey(Enum enm) {
50 return enm.name();
51 }
52
53
54
55
56 protected String getEnumLabel(Enum enm) {
57 return WordUtils.capitalize(enm.name().toLowerCase());
58 }
59 }