public static T parseEnum()

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()));
        }
    }