in src/main/java/com/epam/eco/commons/parse/ParserUtils.java [230:251]
public static <T extends Enum> T parseEnum(Object value, Class<T> aClass) throws ParseException {
Validate.notNull(aClass, "Target class is null");
if (value == null) {
return null;
}
if (aClass.isInstance(value)) {
return (T) value;
} else if (value instanceof String) {
try {
return (T) Enum.valueOf(aClass, ((String) value).trim().toUpperCase());
} catch (IllegalArgumentException ex) {
throw new ParseException(
String.format("Failed to parse '%s' as %s", value, aClass.getName()),
ex);
}
} else {
throw new ParseException(
String.format("Can't parse '%s' as %s", value, aClass.getName()));
}
}