]>
Commit | Line | Data |
---|---|---|
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 |
5 | package 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 | */ | |
18 | public 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 | } |