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

org.rocksdb.RocksIterator Maven / Gradle / Ivy

// Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
//  This source code is licensed under both the GPLv2 (found in the
//  COPYING file in the root directory) and Apache 2.0 License
//  (found in the LICENSE.Apache file in the root directory).

package org.rocksdb;

/**
 * 

An iterator that yields a sequence of key/value pairs from a source. * Multiple implementations are provided by this library. * In particular, iterators are provided * to access the contents of a Table or a DB.

* *

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 class RocksIterator extends AbstractRocksIterator { protected RocksIterator(RocksDB rocksDB, long nativeHandle) { super(rocksDB, nativeHandle); } /** *

Return the key for the current entry. The underlying storage for * the returned slice is valid only until the next modification of * the iterator.

* *

REQUIRES: {@link #isValid()}

* * @return key for the current entry. */ public byte[] key() { assert(isOwningHandle()); return key0(nativeHandle_); } /** *

Return the value for the current entry. The underlying storage for * the returned slice is valid only until the next modification of * the iterator.

* *

REQUIRES: !AtEnd() && !AtStart()

* @return value for the current entry. */ public byte[] value() { assert(isOwningHandle()); return value0(nativeHandle_); } @Override protected final native void disposeInternal(final long handle); @Override final native boolean isValid0(long handle); @Override final native void seekToFirst0(long handle); @Override final native void seekToLast0(long handle); @Override final native void next0(long handle); @Override final native void prev0(long handle); @Override final native void seek0(long handle, byte[] target, int targetLen); @Override final native void seekForPrev0(long handle, byte[] target, int targetLen); @Override final native void status0(long handle) throws RocksDBException; private native byte[] key0(long handle); private native byte[] value0(long handle); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy