*/
public class ResourceBundleChoiceListInitializerImpl extends AbstractChoiceListRenderer implements ChoiceListInitializer {
public List<ChoiceListValue> getChoiceListValues(ExtendedPropertyDefinition epd, String param, List<ChoiceListValue> values, Locale locale,
Map<String, Object> context) {
JahiaResourceBundle rb = new JahiaResourceBundle(null, locale, getTemplatePackageName(epd));
if (values == null || values.size() == 0) {
List<ChoiceListValue> l = new ArrayList<ChoiceListValue>();
String[] constr = epd.getValueConstraints();
for (String s : constr) {
ChoiceListValue bean = new ChoiceListValue(rb.get(epd.getResourceBundleKey() + "." + s.replace(':', '_'), s), new HashMap<String, Object>(),
new ValueImpl(s, PropertyType.STRING, false));
l.add(bean);
}
return l;
} else {
for (ChoiceListValue choiceListValue : values) {
final String displayName = choiceListValue.getDisplayName();
choiceListValue.setDisplayName(rb.get(epd.getResourceBundleKey() + "." + displayName.replace(':', '_'),
displayName));
}
return values;
}
}