@Override public <T extends Enum> T convert(Object value, Object valueSource, Class<T> targetClass) { if (value == null) { return null; } if (value instanceof CharSequence) { return (T) EnumHelper.fromString(value.toString(), targetClass); } else if (value instanceof Enum<?>) { String name = ((Enum<?>) value).name(); return (T) Enum.valueOf(targetClass, name); } return null; }
try { if (type.isEnum()) { result = EnumHelper.fromString(value, (Class<Enum>) type); } else if (type.isAssignableFrom(String.class)) { result = value;