I would like to note this CSVRecord addition I am planning on:
public Boolean getBoolean(String name) {
public boolean getBooleanPrimitive(String name)
The method listings are at the end of this message.
What I want to note here is that these are conversion methods and that the
record still stores the values internally as Strings. I do not want to
Javadoc the conversion in order to give us flexibility over representation
if we decide to change it in the future (caching or whatnot).
I wanted to post here in CTR mode before I or others add APIs like
getLong() and getLongPrimitive(). Since this is a library, I do believe we
should end up providing such APIs at the record level for primitives.
/**
* Returns a value by name.
*
* @param name
* the name of the column to be retrieved.
* @return the column value, or {@code null} if the column name is not
found
* @throws IllegalStateException
* if no header mapping was provided
* @throws IllegalArgumentException
* if the record is inconsistent
* @see #isConsistent()
*/
public Boolean getBoolean(String name) {
String s = this.get(name);
return s != null ? Boolean.valueOf(s) : null;
}
/**
* Returns a value by name.
*
* @param name
* the name of the column to be retrieved.
* @return the column value, or {@code false} if the column name is not
found
* @throws IllegalStateException
* if no header mapping was provided
* @throws IllegalArgumentException
* if the record is inconsistent
* @see #isConsistent()
*/
public boolean getBooleanPrimitive(String name) {
return Boolean.parseBoolean(this.get(name));
}
Gary
--
E-Mail: [email protected] | [email protected]
Java Persistence with Hibernate, Second Edition<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory