Interface SequentialCursor<K,V>

Type Parameters:
K - Type of the record's key
V - Type of the record's value
All Superinterfaces:
AutoCloseable, Closeable
All Known Subinterfaces:
Cursor<K,V>
All Known Implementing Classes:
EmptyCursor

public interface SequentialCursor<K,V> extends Closeable
Cursor extended with navigation methods.
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
     
    default void
    Deletes the record on which this cursor is currently positioned.
    Returns the key of the record on which this cursor is currently positioned.
    default V
    Returns the value of the record on which this cursor is currently positioned.
    boolean
    Check whether this cursor is currently pointing to a valid record.
    boolean
    Moves this cursor to the next record in the tree.
  • Method Details

    • next

      boolean next()
      Moves this cursor to the next record in the tree.

      No data is available before calling next() on a new cursor.

      Returns:
      true if the cursor has moved to the next record, false if no next record exists leaving cursor in undefined state.
    • isValid

      boolean isValid()
      Check whether this cursor is currently pointing to a valid record.

      Before calling isValid() the cursor must be positioned by calling next().

      Returns:
      true if the cursor is pointing to a valid entry, false if cursor is not pointing to a valid entry
    • getKey

      K getKey() throws NoSuchElementException
      Returns the key of the record on which this cursor is currently positioned.
      Returns:
      the current record's key.
      Throws:
      NoSuchElementException - if the cursor is not valid.
    • getValue

      default V getValue() throws NoSuchElementException
      Returns the value of the record on which this cursor is currently positioned.
      Returns:
      the current record's value.
      Throws:
      NoSuchElementException - if the cursor is not valid.
    • delete

      Deletes the record on which this cursor is currently positioned. This method does not alter the position of the cursor. In particular, next() must be called in order to point to the next record. The behavior of methods getKey() and getValue() after this method returns is undefined.
      Throws:
      NoSuchElementException - if the cursor is not valid.
      UnsupportedOperationException - if the cursor implementation does not support updates.
    • close

      default void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable