@Override public TransformableRowIterator getRows() { QueryableIndexIndexableAdapter.RowIteratorImpl baseRowIterator = baseAdapter.getRows(); return new ForwardingRowIterator(baseRowIterator) { /** * This memoization is needed to conform to {@link RowIterator#getPointer()} specification. */ private boolean memoizedOffset = false; @Override public boolean moveToNext() { while (baseRowIterator.moveToNext()) { if (filter.test(baseRowIterator.getPointer())) { baseRowIterator.memoizeOffset(); memoizedOffset = true; return true; } } // Setting back to the last valid offset in this iterator, as required by RowIterator.getPointer() spec. if (memoizedOffset) { baseRowIterator.resetToMemoizedOffset(); } return false; } }; }
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
final List<DebugRow> rowList = RowIteratorHelper.toList(adapter.getRows());
@Override public TransformableRowIterator getRows() { QueryableIndexIndexableAdapter.RowIteratorImpl baseRowIterator = baseAdapter.getRows(); return new ForwardingRowIterator(baseRowIterator) { /** * This memoization is needed to conform to {@link RowIterator#getPointer()} specification. */ private boolean memoizedOffset = false; @Override public boolean moveToNext() { while (baseRowIterator.moveToNext()) { if (filter.test(baseRowIterator.getPointer())) { baseRowIterator.memoizeOffset(); memoizedOffset = true; return true; } } // Setting back to the last valid offset in this iterator, as required by RowIterator.getPointer() spec. if (memoizedOffset) { baseRowIterator.resetToMemoizedOffset(); } return false; } }; }