Package com.opencsv.bean
Class BeanFieldSingleValue<T,I>
- java.lang.Object
-
- com.opencsv.bean.AbstractBeanField<T,I>
-
- com.opencsv.bean.BeanFieldSingleValue<T,I>
-
- Type Parameters:
T- The type of the bean being populatedI- Type of the index into a multivalued field
- All Implemented Interfaces:
BeanField<T,I>
- Direct Known Subclasses:
BeanFieldJoin
public class BeanFieldSingleValue<T,I> extends AbstractBeanField<T,I>
This class concerns itself with handling single-valued bean fields.- Since:
- 4.2
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.regex.PatterncaptureThe regular expression to be used for capturing part of the input for processing.protected java.lang.StringwriteFormatThe format string used for packaging values to be written.-
Fields inherited from class com.opencsv.bean.AbstractBeanField
converter, errorLocale, field, fieldAccess, required, type
-
-
Constructor Summary
Constructors Constructor Description BeanFieldSingleValue(java.lang.Class<?> type, java.lang.reflect.Field field, boolean required, java.util.Locale errorLocale, CsvConverter converter, java.lang.String capture, java.lang.String format)Simply calls the same constructor in the base class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Objectconvert(java.lang.String value)Passes the string to be converted to the converter.protected java.lang.StringconvertToWrite(java.lang.Object value)Passes the object to be converted to the converter.-
Methods inherited from class com.opencsv.bean.AbstractBeanField
assignValueToField, getErrorLocale, getField, getFieldValue, getType, indexAndSplitMultivaluedField, isFieldEmptyForWrite, isRequired, setErrorLocale, setField, setFieldValue, setRequired, setType, write
-
-
-
-
Field Detail
-
capture
protected final java.util.regex.Pattern capture
The regular expression to be used for capturing part of the input for processing. If there was no regular expression specified, this field isnull.
-
writeFormat
protected final java.lang.String writeFormat
The format string used for packaging values to be written. Ifnullor empty, it is ignored.
-
-
Constructor Detail
-
BeanFieldSingleValue
public BeanFieldSingleValue(java.lang.Class<?> type, java.lang.reflect.Field field, boolean required, java.util.Locale errorLocale, CsvConverter converter, java.lang.String capture, java.lang.String format)Simply calls the same constructor in the base class.- Parameters:
type- The type of the class in which this field is found. This is the type as instantiated by opencsv, and not necessarily the type in which the field is declared in the case of inheritance.field- AFieldobject.required- Whether or not this field is required in inputerrorLocale- The errorLocale to use for error messages.converter- The converter to be used to perform the actual data conversioncapture- SeeCsvBindByName.capture()format- The format string used for packaging values to be written. Ifnullor empty, it is ignored.- See Also:
AbstractBeanField(Class, Field, boolean, Locale, CsvConverter)
-
-
Method Detail
-
convert
protected java.lang.Object convert(java.lang.String value) throws CsvDataTypeMismatchException, CsvConstraintViolationExceptionPasses the string to be converted to the converter.- Specified by:
convertin classAbstractBeanField<T,I>- 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 toStringUtils.isBlank(java.lang.CharSequence)- Returns:
- An
Objectrepresenting the input data converted into the proper type - Throws:
CsvBadConverterException- If the converter is nullCsvDataTypeMismatchException- If the input string cannot be converted into the proper typeCsvConstraintViolationException- When the internal structure of data would be violated by the data in the CSV file
-
convertToWrite
protected java.lang.String convertToWrite(java.lang.Object value) throws CsvDataTypeMismatchExceptionPasses the object to be converted to the converter.- Overrides:
convertToWritein classAbstractBeanField<T,I>- 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
valueis null - Throws:
CsvBadConverterException- If the converter is nullCsvDataTypeMismatchException- This implementation does not throw this exception- See Also:
AbstractBeanField.write(java.lang.Object, java.lang.Object)
-
-