]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/java/rocksjni/compaction_options_fifo.cc
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / rocksdb / java / rocksjni / compaction_options_fifo.cc
1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
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).
5 //
6 // This file implements the "bridge" between Java and C++ for
7 // ROCKSDB_NAMESPACE::CompactionOptionsFIFO.
8
9 #include <jni.h>
10
11 #include "include/org_rocksdb_CompactionOptionsFIFO.h"
12 #include "rocksdb/advanced_options.h"
13
14 /*
15 * Class: org_rocksdb_CompactionOptionsFIFO
16 * Method: newCompactionOptionsFIFO
17 * Signature: ()J
18 */
19 jlong Java_org_rocksdb_CompactionOptionsFIFO_newCompactionOptionsFIFO(
20 JNIEnv*, jclass) {
21 const auto* opt = new ROCKSDB_NAMESPACE::CompactionOptionsFIFO();
22 return reinterpret_cast<jlong>(opt);
23 }
24
25 /*
26 * Class: org_rocksdb_CompactionOptionsFIFO
27 * Method: setMaxTableFilesSize
28 * Signature: (JJ)V
29 */
30 void Java_org_rocksdb_CompactionOptionsFIFO_setMaxTableFilesSize(
31 JNIEnv*, jobject, jlong jhandle, jlong jmax_table_files_size) {
32 auto* opt =
33 reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptionsFIFO*>(jhandle);
34 opt->max_table_files_size = static_cast<uint64_t>(jmax_table_files_size);
35 }
36
37 /*
38 * Class: org_rocksdb_CompactionOptionsFIFO
39 * Method: maxTableFilesSize
40 * Signature: (J)J
41 */
42 jlong Java_org_rocksdb_CompactionOptionsFIFO_maxTableFilesSize(
43 JNIEnv*, jobject, jlong jhandle) {
44 auto* opt =
45 reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptionsFIFO*>(jhandle);
46 return static_cast<jlong>(opt->max_table_files_size);
47 }
48
49 /*
50 * Class: org_rocksdb_CompactionOptionsFIFO
51 * Method: setAllowCompaction
52 * Signature: (JZ)V
53 */
54 void Java_org_rocksdb_CompactionOptionsFIFO_setAllowCompaction(
55 JNIEnv*, jobject, jlong jhandle, jboolean allow_compaction) {
56 auto* opt =
57 reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptionsFIFO*>(jhandle);
58 opt->allow_compaction = static_cast<bool>(allow_compaction);
59 }
60
61 /*
62 * Class: org_rocksdb_CompactionOptionsFIFO
63 * Method: allowCompaction
64 * Signature: (J)Z
65 */
66 jboolean Java_org_rocksdb_CompactionOptionsFIFO_allowCompaction(
67 JNIEnv*, jobject, jlong jhandle) {
68 auto* opt =
69 reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptionsFIFO*>(jhandle);
70 return static_cast<jboolean>(opt->allow_compaction);
71 }
72
73 /*
74 * Class: org_rocksdb_CompactionOptionsFIFO
75 * Method: disposeInternal
76 * Signature: (J)V
77 */
78 void Java_org_rocksdb_CompactionOptionsFIFO_disposeInternal(
79 JNIEnv*, jobject, jlong jhandle) {
80 delete reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptionsFIFO*>(jhandle);
81 }