org.araneaframework.backend.list.helper.reader
Class ConverterBasedColumnReader

java.lang.Object
  extended byorg.araneaframework.backend.list.helper.reader.FilterResultSetColumnReader
      extended byorg.araneaframework.backend.list.helper.reader.ConverterBasedColumnReader
All Implemented Interfaces:
ResultSetColumnReader

public class ConverterBasedColumnReader
extends FilterResultSetColumnReader

ResultSetColumnReader that can have custom converters for each column.

This implementation wraps an existing ResultSetColumnReader by adding additional behavior if a certain column is being read.

To add a custom converter for a column use method addResultSetDeconverterForColumn(String, Converter). For that column Converter.reverseConvert(Object) is invoked and Converter.getDestinationType() is used as a Java type retrieved from the ResultSet.

Since:
1.1
Author:
Rein Raudjärv

Constructor Summary
ConverterBasedColumnReader(ResultSetColumnReader child)
           
 
Method Summary
 void addResultSetDeconverterForColumn(String columnName, Converter converter)
          Adds a deconverter for ResultSet.
 Object readFromResultSet(String columnName, ResultSet resultSet, Class javaType)
          This method should read some custom Java Object from the given ResultSet column.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConverterBasedColumnReader

public ConverterBasedColumnReader(ResultSetColumnReader child)
Method Detail

addResultSetDeconverterForColumn

public void addResultSetDeconverterForColumn(String columnName,
                                             Converter converter)
Adds a deconverter for ResultSet.

The converter is used to Converter.reverseConvert(Object) values from ResultSet.

Parameters:
columnName - ResultSet column name.
converter - converter that is used by reverseConvert() method.

readFromResultSet

public Object readFromResultSet(String columnName,
                                ResultSet resultSet,
                                Class javaType)
Description copied from interface: ResultSetColumnReader
This method should read some custom Java Object from the given ResultSet column.

Specified by:
readFromResultSet in interface ResultSetColumnReader
Overrides:
readFromResultSet in class FilterResultSetColumnReader