Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Sample{
- private Map<Class<Enum>, IConverter<? extends Enum<?>>> enumConverter = Maps.newHashMap();
- public <T extends Enum<T>> T getEnumAttribute(String key, final Class<T> ee){
- IConverter<T> e = (IConverter<T>)enumConverters.get(ee);
- if ( e == null ){
- e = new IConverter<T>() {
- @Override
- public String toString(T val) {
- return val.toString();
- }
- @Override
- public Class<T> getType() {
- return ee;
- }
- @Override
- public T fromString(String val) {
- return Enum.valueOf(ee, val);
- }
- };
- enumConverters.put((Class<Enum>) ee, e);
- }
- return getAttribute(key, e);
- }
- public static interface IConverter<T> extends Serializable{
- public T fromString(String val);
- public String toString(T val);
- public Class<T> getType();
- }
- }
Add Comment
Please, Sign In to add comment