2017-05-18 14:26:23 -04:00
|
|
|
package com.moparisthebest.jdbc;
|
|
|
|
|
|
|
|
import java.sql.ResultSet;
|
|
|
|
import java.util.Calendar;
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Created by mopar on 5/18/17.
|
|
|
|
*/
|
|
|
|
public class CleaningCompilingResultSetMapper<E> extends CompilingResultSetMapper {
|
|
|
|
|
|
|
|
private final Cleaner<E> cleaner;
|
|
|
|
|
2017-06-18 21:58:55 -04:00
|
|
|
public CleaningCompilingResultSetMapper(final Calendar cal, final int arrayMaxLength, final CompilingRowToObjectMapper.Cache cache, final Cleaner<E> cleaner) {
|
2017-05-18 14:26:23 -04:00
|
|
|
super(cal, arrayMaxLength, cache);
|
|
|
|
this.cleaner = cleaner;
|
|
|
|
}
|
|
|
|
|
2017-06-18 21:58:55 -04:00
|
|
|
public CleaningCompilingResultSetMapper(final CompilingRowToObjectMapper.Cache cache, final Cleaner<E> cleaner) {
|
2017-05-18 14:26:23 -04:00
|
|
|
super(cache);
|
|
|
|
this.cleaner = cleaner;
|
|
|
|
}
|
|
|
|
|
2017-06-18 21:58:55 -04:00
|
|
|
public CleaningCompilingResultSetMapper(final int arrayMaxLength, final CompilingRowToObjectMapper.Cache cache, final Cleaner<E> cleaner) {
|
|
|
|
super(arrayMaxLength, cache);
|
2017-05-18 14:26:23 -04:00
|
|
|
this.cleaner = cleaner;
|
|
|
|
}
|
|
|
|
|
2017-06-18 21:58:55 -04:00
|
|
|
public CleaningCompilingResultSetMapper(final Cleaner<E> cleaner) {
|
2017-05-18 14:26:23 -04:00
|
|
|
this.cleaner = cleaner;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@SuppressWarnings({"unchecked"})
|
|
|
|
public <K, T> RowMapper<K, T> getRowMapper(final ResultSet resultSet, final Class<T> returnTypeClass, final Calendar cal, final Class<?> mapValType, final Class<K> mapKeyType) {
|
|
|
|
return new CleaningRowToObjectMapper((Cleaner<T>)cleaner, super.getRowMapper(resultSet, returnTypeClass, cal, mapValType, mapKeyType));
|
|
|
|
}
|
|
|
|
}
|