return new OIndexTxCursor(txCursor, backedCursor, ascOrder, indexChanges);
}
@Override
public OIndexCursor iterateEntriesMajor(Object fromKey, boolean fromInclusive, boolean ascOrder) {
final OTransactionIndexChanges indexChanges = database.getTransaction().getIndexChanges(delegate.getName());
if (indexChanges == null)
return super.iterateEntriesMajor(fromKey, fromInclusive, ascOrder);
final OIndexCursor txCursor;
final Object lastKey = indexChanges.getLastKey();
if (ascOrder)
txCursor = new PureTxBetweenIndexForwardCursor(fromKey, fromInclusive, lastKey, true, indexChanges);
else
txCursor = new PureTxBetweenIndexBackwardCursor(fromKey, fromInclusive, lastKey, true, indexChanges);