@Override public ITupleReference getFilterMaxTuple() { return currentCursor.getFilterMaxTuple(); }
@Override public ITupleReference getFilterMinTuple() { return currentCursor.getFilterMinTuple(); }
@Override public boolean getSearchOperationCallbackProceedResult() { return currentCursor.getSearchOperationCallbackProceedResult(); } }
if (appendSearchCallbackProceedResult) { writeSearchCallbackProceedResult(tb, ((ILSMIndexCursor) cursor).getSearchOperationCallbackProceedResult()); writeFilterTupleToOutput(((ILSMIndexCursor) cursor).getFilterMinTuple()); writeFilterTupleToOutput(((ILSMIndexCursor) cursor).getFilterMaxTuple());
@Override public void doClose() throws HyracksDataException { if (currentCursor != null) { currentCursor.close(); } currentCursor = null; }
@Override public void doNext() throws HyracksDataException { currentCursor.next(); }
@Override public ITupleReference doGetTuple() { return currentCursor.getTuple(); }
@Override public boolean doHasNext() throws HyracksDataException { return currentCursor.hasNext(); }
@Override public void doOpen(ICursorInitialState initialState, ISearchPredicate searchPred) throws HyracksDataException { LSMBTreeCursorInitialState lsmInitialState = (LSMBTreeCursorInitialState) initialState; RangePredicate btreePred = (RangePredicate) searchPred; currentCursor = lsmInitialState.isDiskComponentScan() ? scanCursor : btreePred.isPointPredicate(lsmInitialState.getOriginalKeyComparator()) ? pointCursor : rangeCursor; currentCursor.open(lsmInitialState, searchPred); }