class LuceneAllDocumentsReader implements BoundedIterable<Document> {

    @Override
    public Iterator<Document> iterator()
    {
        Iterator<Iterator<Document>> iterators = partitionReaders.stream()
                .map( LucenePartitionAllDocumentsReader::iterator )
                .collect( toList() )
                .iterator();

        return Iterators.concat( iterators );
    }

    public  LuceneAllDocumentsReader( List<LucenePartitionAllDocumentsReader> partitionReaders );

}