]> git.proxmox.com Git - ceph.git/blame - ceph/src/rocksdb/java/src/main/java/org/rocksdb/MemTableConfig.java
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / rocksdb / java / src / main / java / org / rocksdb / MemTableConfig.java
CommitLineData
7c673cae 1// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
11fdf7f2
TL
2// This source code is licensed under both the GPLv2 (found in the
3// COPYING file in the root directory) and Apache 2.0 License
4// (found in the LICENSE.Apache file in the root directory).
7c673cae
FG
5package org.rocksdb;
6
7/**
8 * MemTableConfig is used to config the internal mem-table of a RocksDB.
9 * It is required for each memtable to have one such sub-class to allow
10 * Java developers to use it.
11 *
12 * To make a RocksDB to use a specific MemTable format, its associated
13 * MemTableConfig should be properly set and passed into Options
14 * via Options.setMemTableFactory() and open the db using that Options.
15 *
16 * @see Options
17 */
18public abstract class MemTableConfig {
19 /**
20 * This function should only be called by Options.setMemTableConfig(),
21 * which will create a c++ shared-pointer to the c++ MemTableRepFactory
22 * that associated with the Java MemTableConfig.
23 *
24 * @see Options#setMemTableConfig(MemTableConfig)
25 *
26 * @return native handle address to native memory table instance.
27 */
28 abstract protected long newMemTableFactoryHandle();
29}