Class ConverterEnum

All Implemented Interfaces:
CsvConverter

public class ConverterEnum extends AbstractCsvConverter
This class converts an input to an enumeration type and vice versa. The input string must match the enumeration value as declared, ignoring case. The output value will always be the enumeration value, exactly as declared.
Since:
5.2
  • Constructor Details

    • ConverterEnum

      public ConverterEnum(Class<?> type, String locale, String writeLocale, Locale errorLocale)
      Parameters:
      type - The class of the type of the data being processed
      locale - If not null or empty, specifies the locale used for converting locale-specific data types
      writeLocale - If not null or empty, specifies the locale used for converting locale-specific data types for writing
      errorLocale - The locale to use for error messages.
  • Method Details

    • convertToRead

      public Object convertToRead(String value) throws CsvDataTypeMismatchException
      Description copied from interface: CsvConverter
      Method for converting from a string to the proper data type of the destination field.
      Parameters:
      value - The string from the selected field of the CSV file. If the field is marked as required in the annotation, this value is guaranteed not to be null, empty or blank according to StringUtils.isBlank(java.lang.CharSequence)
      Returns:
      An Object representing the input data converted into the proper type
      Throws:
      CsvDataTypeMismatchException - If the input string cannot be converted into the proper type
    • convertToWrite

      public String convertToWrite(Object value)
      Description copied from class: AbstractCsvConverter
      This implementation simply calls toString() on value. For complex types, overriding the toString() method in the type of the field in question would be an alternative to writing a conversion routine in a class derived from this one.
      Specified by:
      convertToWrite in interface CsvConverter
      Overrides:
      convertToWrite in class AbstractCsvConverter
      Parameters:
      value - The contents of the field currently being processed from the bean to be written. Can be null if the field is not marked as required.
      Returns:
      A string representation of the value of the field in question in the bean passed in, or an empty string if value is null