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

org.rocksdb.RocksObject 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;

/**
 * RocksObject is an implementation of {@link AbstractNativeReference} which
 * has an immutable and therefore thread-safe reference to the underlying
 * native C++ RocksDB object.
 * 

* RocksObject is the base-class of almost all RocksDB classes that have a * pointer to some underlying native C++ {@code rocksdb} object.

*

* The use of {@code RocksObject} should always be preferred over * {@link RocksMutableObject}.

*/ public abstract class RocksObject extends AbstractImmutableNativeReference { /** * An immutable reference to the value of the C++ pointer pointing to some * underlying native RocksDB C++ object. */ protected final long nativeHandle_; protected RocksObject(final long nativeHandle) { super(true); this.nativeHandle_ = nativeHandle; } /** * Deletes underlying C++ object pointer. */ @Override protected void disposeInternal() { disposeInternal(nativeHandle_); } protected abstract void disposeInternal(final long handle); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy