final ListenableFuture<ResultSet> futureResultSet = daoContext.execute(nativeStatementWrapper);
final Function<ResultSet, Iterator<TypedMap>> toTypedMap = new Function<ResultSet, Iterator<TypedMap>>() {
@Override
public Iterator<TypedMap> apply(ResultSet resultSet) {
return new TypedMapIterator(resultSet.iterator());
}
};
final ListenableFuture<Iterator<TypedMap>> futureTypedMapIterator = asyncUtils.transformFuture(futureResultSet, toTypedMap, executorService);
return asyncUtils.buildInterruptible(futureTypedMapIterator);