package auth; import java.util.EnumSet; import java.util.HashMap; import java.util.Map; public enum GrantType { LDAP("ldap"), PASSWORD("password"), REFRESH_TOKEN("refresh_token"); private final String value; private static final Map<String, GrantType> lookup = new HashMap<>(); static { for (GrantType grantType : EnumSet.allOf(GrantType.class)) { lookup.put(grantType.getValue(), grantType); } } GrantType(String value) { this.value = value; } public static GrantType get(String value) { return lookup.get(value.toLowerCase()); } public String getValue() { return value; } }