Class DefaultFieldSet
java.lang.Object
org.springframework.batch.item.file.transform.DefaultFieldSet
- All Implemented Interfaces:
FieldSet
Default implementation of
FieldSet using Java primitive and standard types and
utilities. Strings are trimmed before parsing by default, and so are plain String
values.- Author:
- Rob Harrop, Dave Syer, Mahmoud Ben Hassine
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultFieldSet(String[] tokens) Create a FieldSet with anonymous tokens.DefaultFieldSet(String[] tokens, String[] names) Create a FieldSet with named tokens. -
Method Summary
Modifier and TypeMethodDescriptionbooleanintReturn the number of fields in this 'FieldSet'.String[]getNames()Accessor for the names of the fields.Construct name-value pairs from the field names and string values.String[]inthashCode()booleanhasNames()Check if there are names defined for the fields.protected intRetrieve the index of where a specified column is located based on thenameparameter.protected StringreadAndTrim(int index) Read and trim theStringvalue at 'index'.readBigDecimal(int index) Read theBigDecimalvalue at index 'index'.readBigDecimal(int index, BigDecimal defaultValue) Read theBigDecimalvalue at index 'index', returning the supplieddefaultValueif the trimmed string value at index 'index' is blank.readBigDecimal(String name) Read theBigDecimalvalue from column with given 'name.readBigDecimal(String name, BigDecimal defaultValue) Read theBigDecimalvalue from column with given 'name, returning the supplieddefaultValueif the trimmed string value at index 'index' is blank.booleanreadBoolean(int index) Read the 'boolean' value at index 'index'.booleanreadBoolean(int index, String trueValue) Read the 'boolean' value at index 'index'.booleanreadBoolean(String name) Read the 'boolean' value from column with given 'name'.booleanreadBoolean(String name, String trueValue) Read the 'boolean' value from column with given 'name'.bytereadByte(int index) Read the 'byte' value at index 'index'.byteRead the 'byte' value from column with given 'name'.charreadChar(int index) Read the 'char' value at index 'index'.charRead the 'char' value from column with given 'name'.readDate(int index) Read thejava.util.Datevalue in default format at designated columnindex.Read thejava.util.Datevalue in default format at designated columnindex.Read thejava.util.Datevalue in default format at designated columnindex.Read thejava.util.Datevalue in default format at designated columnindex.Read thejava.sql.Datevalue in given format from column with givenname.Read thejava.sql.Datevalue in given format from column with givenname.Read thejava.sql.Datevalue in given format from column with givenname.Read thejava.sql.Datevalue in given format from column with givenname.doublereadDouble(int index) Read the 'double' value at index 'index'.doublereadDouble(String name) Read the 'double' value from column with given 'name.floatreadFloat(int index) Read the 'float' value at index 'index'.floatRead the 'float' value from column with given 'name.intreadInt(int index) Read the 'int' value at index 'index'.intreadInt(int index, int defaultValue) Read the 'int' value at index 'index', using the supplieddefaultValueif the field value is blank.intRead the 'int' value from column with given 'name'.intRead the 'int' value from column with given 'name', using the supplieddefaultValueif the field value is blank.longreadLong(int index) Read the 'long' value at index 'index'.longreadLong(int index, long defaultValue) Read the 'long' value at index 'index', using the supplieddefaultValueif the field value is blank.longRead the 'long' value from column with given 'name'.longRead the 'long' value from column with given 'name', using the supplieddefaultValueif the field value is blank.readRawString(int index) Read theStringvalue at index 'index' including trailing whitespace (don't trim).readRawString(String name) Read theStringvalue from column with given 'name' including trailing whitespace (don't trim).shortreadShort(int index) Read the 'short' value at index 'index'.shortRead the 'short' value from column with given 'name'.readString(int index) Read theStringvalue at index 'index'.readString(String name) Read theStringvalue from column with given 'name'.voidsetDateFormat(DateFormat dateFormat) TheDateFormatto use for parsing dates.final voidsetNumberFormat(NumberFormat numberFormat) TheNumberFormatto use for parsing numbers.toString()
-
Constructor Details
-
DefaultFieldSet
Create a FieldSet with anonymous tokens. They can only be retrieved by column number.- Parameters:
tokens- the token values- See Also:
-
DefaultFieldSet
Create a FieldSet with named tokens. The token values can then be retrieved either by name or by column number.- Parameters:
tokens- the token valuesnames- the names of the tokens- See Also:
-
-
Method Details
-
setNumberFormat
TheNumberFormatto use for parsing numbers. If unset theLocale.USwill be used ('.' as decimal place).- Parameters:
numberFormat- theNumberFormatto use for number parsing
-
setDateFormat
TheDateFormatto use for parsing dates. If unset the default pattern is ISO standardyyyy-MM-dd.- Parameters:
dateFormat- theDateFormatto use for date parsing
-
getNames
Description copied from interface:FieldSetAccessor for the names of the fields. -
hasNames
public boolean hasNames()Description copied from interface:FieldSetCheck if there are names defined for the fields. -
getValues
-
readString
Description copied from interface:FieldSetRead theStringvalue at index 'index'.- Specified by:
readStringin interfaceFieldSet- Parameters:
index- the field index.- Returns:
Stringcontaining the value at the index.
-
readString
Description copied from interface:FieldSetRead theStringvalue from column with given 'name'.- Specified by:
readStringin interfaceFieldSet- Parameters:
name- the fieldname.- Returns:
Stringcontaining the value from the specifiedname.
-
readRawString
Description copied from interface:FieldSetRead theStringvalue at index 'index' including trailing whitespace (don't trim).- Specified by:
readRawStringin interfaceFieldSet- Parameters:
index- the field index.- Returns:
Stringcontaining the value from the specifiedindex.
-
readRawString
Description copied from interface:FieldSetRead theStringvalue from column with given 'name' including trailing whitespace (don't trim).- Specified by:
readRawStringin interfaceFieldSet- Parameters:
name- the fieldname.- Returns:
Stringcontaining the value from the specifiedname.
-
readBoolean
public boolean readBoolean(int index) Description copied from interface:FieldSetRead the 'boolean' value at index 'index'.- Specified by:
readBooleanin interfaceFieldSet- Parameters:
index- the field index.- Returns:
- boolean containing the value from the specified
index.
-
readBoolean
Description copied from interface:FieldSetRead the 'boolean' value from column with given 'name'.- Specified by:
readBooleanin interfaceFieldSet- Parameters:
name- the fieldname.- Returns:
- boolean containing the value from the specified
name.
-
readBoolean
Description copied from interface:FieldSetRead the 'boolean' value at index 'index'.- Specified by:
readBooleanin interfaceFieldSet- Parameters:
index- the field index.trueValue- the value that signifiestrue; case-sensitive.- Returns:
- boolean containing the value from the specified
index.
-
readBoolean
Description copied from interface:FieldSetRead the 'boolean' value from column with given 'name'.- Specified by:
readBooleanin interfaceFieldSet- Parameters:
name- the fieldname.trueValue- the value that signifiestrue; case-sensitive.- Returns:
- boolean containing the value from the specified
name.
-
readChar
public char readChar(int index) Description copied from interface:FieldSetRead the 'char' value at index 'index'. -
readChar
Description copied from interface:FieldSetRead the 'char' value from column with given 'name'. -
readByte
public byte readByte(int index) Description copied from interface:FieldSetRead the 'byte' value at index 'index'. -
readByte
Description copied from interface:FieldSetRead the 'byte' value from column with given 'name'. -
readShort
public short readShort(int index) Description copied from interface:FieldSetRead the 'short' value at index 'index'. -
readShort
Description copied from interface:FieldSetRead the 'short' value from column with given 'name'. -
readInt
public int readInt(int index) Description copied from interface:FieldSetRead the 'int' value at index 'index'. -
readInt
Description copied from interface:FieldSetRead the 'int' value from column with given 'name'. -
readInt
public int readInt(int index, int defaultValue) Description copied from interface:FieldSetRead the 'int' value at index 'index', using the supplieddefaultValueif the field value is blank. -
readInt
Description copied from interface:FieldSetRead the 'int' value from column with given 'name', using the supplieddefaultValueif the field value is blank. -
readLong
public long readLong(int index) Description copied from interface:FieldSetRead the 'long' value at index 'index'. -
readLong
Description copied from interface:FieldSetRead the 'long' value from column with given 'name'. -
readLong
public long readLong(int index, long defaultValue) Description copied from interface:FieldSetRead the 'long' value at index 'index', using the supplieddefaultValueif the field value is blank. -
readLong
Description copied from interface:FieldSetRead the 'long' value from column with given 'name', using the supplieddefaultValueif the field value is blank. -
readFloat
public float readFloat(int index) Description copied from interface:FieldSetRead the 'float' value at index 'index'. -
readFloat
Description copied from interface:FieldSetRead the 'float' value from column with given 'name. -
readDouble
public double readDouble(int index) Description copied from interface:FieldSetRead the 'double' value at index 'index'.- Specified by:
readDoublein interfaceFieldSet- Parameters:
index- the field index.- Returns:
- double containing the value from the specified index.
-
readDouble
Description copied from interface:FieldSetRead the 'double' value from column with given 'name.- Specified by:
readDoublein interfaceFieldSet- Parameters:
name- the fieldname.- Returns:
- double containing the value from the specified
name.
-
readBigDecimal
Description copied from interface:FieldSetRead theBigDecimalvalue at index 'index'.- Specified by:
readBigDecimalin interfaceFieldSet- Parameters:
index- the field index.- Returns:
BigDecimalcontaining the value from the specified index.
-
readBigDecimal
Description copied from interface:FieldSetRead theBigDecimalvalue from column with given 'name.- Specified by:
readBigDecimalin interfaceFieldSet- Parameters:
name- the fieldname.- Returns:
BigDecimalcontaining the value from the specifiedname.
-
readBigDecimal
Description copied from interface:FieldSetRead theBigDecimalvalue at index 'index', returning the supplieddefaultValueif the trimmed string value at index 'index' is blank.- Specified by:
readBigDecimalin interfaceFieldSet- Parameters:
index- the field index.defaultValue- the value to use if the field value is blank.- Returns:
BigDecimalcontaining the value from the specified index.
-
readBigDecimal
Description copied from interface:FieldSetRead theBigDecimalvalue from column with given 'name, returning the supplieddefaultValueif the trimmed string value at index 'index' is blank.- Specified by:
readBigDecimalin interfaceFieldSet- Parameters:
name- the fieldname.defaultValue- the default value to use if the field is blank- Returns:
BigDecimalcontaining the value from the specifiedname.
-
readDate
Description copied from interface:FieldSetRead thejava.util.Datevalue in default format at designated columnindex. -
readDate
Description copied from interface:FieldSetRead thejava.util.Datevalue in default format at designated columnindex. -
readDate
Description copied from interface:FieldSetRead thejava.sql.Datevalue in given format from column with givenname. -
readDate
Description copied from interface:FieldSetRead thejava.sql.Datevalue in given format from column with givenname. -
readDate
Description copied from interface:FieldSetRead thejava.util.Datevalue in default format at designated columnindex. -
readDate
Description copied from interface:FieldSetRead thejava.util.Datevalue in default format at designated columnindex. -
readDate
Description copied from interface:FieldSetRead thejava.sql.Datevalue in given format from column with givenname. -
readDate
Description copied from interface:FieldSetRead thejava.sql.Datevalue in given format from column with givenname. -
getFieldCount
public int getFieldCount()Description copied from interface:FieldSetReturn the number of fields in this 'FieldSet'.- Specified by:
getFieldCountin interfaceFieldSet- Returns:
- int containing the number of fields in this field set.
-
readAndTrim
Read and trim theStringvalue at 'index'.- Parameters:
index- the offset in the token array to obtain the value to be trimmed.- Returns:
- null if the field value is
null.
-
indexOf
Retrieve the index of where a specified column is located based on thenameparameter.- Parameters:
name- the value to search in theListof names.- Returns:
- the index in the
Listof names where the name was found. - Throws:
IllegalArgumentException- if a column with given name is not defined.
-
toString
-
equals
-
hashCode
public int hashCode() -
getProperties
Description copied from interface:FieldSetConstruct name-value pairs from the field names and string values. Null values are omitted.- Specified by:
getPropertiesin interfaceFieldSet- Returns:
- some properties representing the field set.
-