pippo
pippo copied to clipboard
ENUM case insensitive
Is there another less verbose way of converting a request parameter to an ENUM with case-insensitive?
The only way I saw it was implementing a convert, like this:
import ro.pippo.core.ParameterValue;
import ro.pippo.core.converters.Converter;
public final class TypeOrderIgnoreCaseConverter implements Converter<TypeOrder> {
@Override
public TypeOrder getAsObject(String[] values, Locale locale, String pattern) {
final ParameterValue parameterValue = new ParameterValue(values);
return parameterValue.toEnum(TypeOrder.class, null, false);
}
}
Boring: for each ENUM it is necessary to have a specific converter.
My TypeOrder ENUM:
public enum TypeOrder {
ASC("asc"), DESC("desc");
// omitted for brevity
}
I don't use enum as request parameter. I cannot help you. I prefer to use plain variant with ParameterValue
.