All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.rocksdb.RocksIteratorInterface Maven / Gradle / Ivy

Go to download

RocksDB fat jar to use with Apache Flink that contains .so files for linux32 and linux64, jnilib files for Mac OSX, and a .dll for Windows x64.

There is a newer version: 5.17.2-artisans-2.0
Show newest version
// Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
// This source code is licensed under the BSD-style license found in the
// LICENSE file in the root directory of this source tree. An additional grant
// of patent rights can be found in the PATENTS file in the same directory.

package org.rocksdb;

/**
 * 

Defines the interface for an Iterator which provides * access to data one entry at a time. Multiple implementations * are provided by this library. In particular, iterators are provided * to access the contents of a DB and Write Batch.

* *

Multiple threads can invoke const methods on an RocksIterator without * external synchronization, but if any of the threads may call a * non-const method, all threads accessing the same RocksIterator must use * external synchronization.

* * @see org.rocksdb.RocksObject */ public interface RocksIteratorInterface { /** *

An iterator is either positioned at an entry, or * not valid. This method returns true if the iterator is valid.

* * @return true if iterator is valid. */ boolean isValid(); /** *

Position at the first entry in the source. The iterator is Valid() * after this call if the source is not empty.

*/ void seekToFirst(); /** *

Position at the last entry in the source. The iterator is * valid after this call if the source is not empty.

*/ void seekToLast(); /** *

Position at the first entry in the source whose key is that or * past target.

* *

The iterator is valid after this call if the source contains * a key that comes at or past target.

* * @param target byte array describing a key or a * key prefix to seek for. */ void seek(byte[] target); /** *

Moves to the next entry in the source. After this call, Valid() is * true if the iterator was not positioned at the last entry in the source.

* *

REQUIRES: {@link #isValid()}

*/ void next(); /** *

Moves to the previous entry in the source. After this call, Valid() is * true if the iterator was not positioned at the first entry in source.

* *

REQUIRES: {@link #isValid()}

*/ void prev(); /** *

If an error has occurred, return it. Else return an ok status. * If non-blocking IO is requested and this operation cannot be * satisfied without doing some IO, then this returns Status::Incomplete().

* * @throws RocksDBException thrown if error happens in underlying * native library. */ void status() throws RocksDBException; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy