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++
7 // for ROCKSDB_NAMESPACE::TransactionOptions.
8
9 #include <jni.h>
10
11 #include "include/org_rocksdb_TransactionOptions.h"
12
13 #include "rocksdb/utilities/transaction_db.h"
14
15 /*
16 * Class: org_rocksdb_TransactionOptions
17 * Method: newTransactionOptions
18 * Signature: ()J
19 */
Java_org_rocksdb_TransactionOptions_newTransactionOptions(JNIEnv *,jclass)20 jlong Java_org_rocksdb_TransactionOptions_newTransactionOptions(
21 JNIEnv* /*env*/, jclass /*jcls*/) {
22 auto* opts = new ROCKSDB_NAMESPACE::TransactionOptions();
23 return reinterpret_cast<jlong>(opts);
24 }
25
26 /*
27 * Class: org_rocksdb_TransactionOptions
28 * Method: isSetSnapshot
29 * Signature: (J)Z
30 */
Java_org_rocksdb_TransactionOptions_isSetSnapshot(JNIEnv *,jobject,jlong jhandle)31 jboolean Java_org_rocksdb_TransactionOptions_isSetSnapshot(JNIEnv* /*env*/,
32 jobject /*jobj*/,
33 jlong jhandle) {
34 auto* opts =
35 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
36 return opts->set_snapshot;
37 }
38
39 /*
40 * Class: org_rocksdb_TransactionOptions
41 * Method: setSetSnapshot
42 * Signature: (JZ)V
43 */
Java_org_rocksdb_TransactionOptions_setSetSnapshot(JNIEnv *,jobject,jlong jhandle,jboolean jset_snapshot)44 void Java_org_rocksdb_TransactionOptions_setSetSnapshot(
45 JNIEnv* /*env*/, jobject /*jobj*/, jlong jhandle, jboolean jset_snapshot) {
46 auto* opts =
47 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
48 opts->set_snapshot = jset_snapshot;
49 }
50
51 /*
52 * Class: org_rocksdb_TransactionOptions
53 * Method: isDeadlockDetect
54 * Signature: (J)Z
55 */
Java_org_rocksdb_TransactionOptions_isDeadlockDetect(JNIEnv *,jobject,jlong jhandle)56 jboolean Java_org_rocksdb_TransactionOptions_isDeadlockDetect(JNIEnv* /*env*/,
57 jobject /*jobj*/,
58 jlong jhandle) {
59 auto* opts =
60 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
61 return opts->deadlock_detect;
62 }
63
64 /*
65 * Class: org_rocksdb_TransactionOptions
66 * Method: setDeadlockDetect
67 * Signature: (JZ)V
68 */
Java_org_rocksdb_TransactionOptions_setDeadlockDetect(JNIEnv *,jobject,jlong jhandle,jboolean jdeadlock_detect)69 void Java_org_rocksdb_TransactionOptions_setDeadlockDetect(
70 JNIEnv* /*env*/, jobject /*jobj*/, jlong jhandle,
71 jboolean jdeadlock_detect) {
72 auto* opts =
73 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
74 opts->deadlock_detect = jdeadlock_detect;
75 }
76
77 /*
78 * Class: org_rocksdb_TransactionOptions
79 * Method: getLockTimeout
80 * Signature: (J)J
81 */
Java_org_rocksdb_TransactionOptions_getLockTimeout(JNIEnv *,jobject,jlong jhandle)82 jlong Java_org_rocksdb_TransactionOptions_getLockTimeout(JNIEnv* /*env*/,
83 jobject /*jobj*/,
84 jlong jhandle) {
85 auto* opts =
86 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
87 return opts->lock_timeout;
88 }
89
90 /*
91 * Class: org_rocksdb_TransactionOptions
92 * Method: setLockTimeout
93 * Signature: (JJ)V
94 */
Java_org_rocksdb_TransactionOptions_setLockTimeout(JNIEnv *,jobject,jlong jhandle,jlong jlock_timeout)95 void Java_org_rocksdb_TransactionOptions_setLockTimeout(JNIEnv* /*env*/,
96 jobject /*jobj*/,
97 jlong jhandle,
98 jlong jlock_timeout) {
99 auto* opts =
100 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
101 opts->lock_timeout = jlock_timeout;
102 }
103
104 /*
105 * Class: org_rocksdb_TransactionOptions
106 * Method: getExpiration
107 * Signature: (J)J
108 */
Java_org_rocksdb_TransactionOptions_getExpiration(JNIEnv *,jobject,jlong jhandle)109 jlong Java_org_rocksdb_TransactionOptions_getExpiration(JNIEnv* /*env*/,
110 jobject /*jobj*/,
111 jlong jhandle) {
112 auto* opts =
113 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
114 return opts->expiration;
115 }
116
117 /*
118 * Class: org_rocksdb_TransactionOptions
119 * Method: setExpiration
120 * Signature: (JJ)V
121 */
Java_org_rocksdb_TransactionOptions_setExpiration(JNIEnv *,jobject,jlong jhandle,jlong jexpiration)122 void Java_org_rocksdb_TransactionOptions_setExpiration(JNIEnv* /*env*/,
123 jobject /*jobj*/,
124 jlong jhandle,
125 jlong jexpiration) {
126 auto* opts =
127 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
128 opts->expiration = jexpiration;
129 }
130
131 /*
132 * Class: org_rocksdb_TransactionOptions
133 * Method: getDeadlockDetectDepth
134 * Signature: (J)J
135 */
Java_org_rocksdb_TransactionOptions_getDeadlockDetectDepth(JNIEnv *,jobject,jlong jhandle)136 jlong Java_org_rocksdb_TransactionOptions_getDeadlockDetectDepth(
137 JNIEnv* /*env*/, jobject /*jobj*/, jlong jhandle) {
138 auto* opts =
139 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
140 return opts->deadlock_detect_depth;
141 }
142
143 /*
144 * Class: org_rocksdb_TransactionOptions
145 * Method: setDeadlockDetectDepth
146 * Signature: (JJ)V
147 */
Java_org_rocksdb_TransactionOptions_setDeadlockDetectDepth(JNIEnv *,jobject,jlong jhandle,jlong jdeadlock_detect_depth)148 void Java_org_rocksdb_TransactionOptions_setDeadlockDetectDepth(
149 JNIEnv* /*env*/, jobject /*jobj*/, jlong jhandle,
150 jlong jdeadlock_detect_depth) {
151 auto* opts =
152 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
153 opts->deadlock_detect_depth = jdeadlock_detect_depth;
154 }
155
156 /*
157 * Class: org_rocksdb_TransactionOptions
158 * Method: getMaxWriteBatchSize
159 * Signature: (J)J
160 */
Java_org_rocksdb_TransactionOptions_getMaxWriteBatchSize(JNIEnv *,jobject,jlong jhandle)161 jlong Java_org_rocksdb_TransactionOptions_getMaxWriteBatchSize(JNIEnv* /*env*/,
162 jobject /*jobj*/,
163 jlong jhandle) {
164 auto* opts =
165 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
166 return opts->max_write_batch_size;
167 }
168
169 /*
170 * Class: org_rocksdb_TransactionOptions
171 * Method: setMaxWriteBatchSize
172 * Signature: (JJ)V
173 */
Java_org_rocksdb_TransactionOptions_setMaxWriteBatchSize(JNIEnv *,jobject,jlong jhandle,jlong jmax_write_batch_size)174 void Java_org_rocksdb_TransactionOptions_setMaxWriteBatchSize(
175 JNIEnv* /*env*/, jobject /*jobj*/, jlong jhandle,
176 jlong jmax_write_batch_size) {
177 auto* opts =
178 reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
179 opts->max_write_batch_size = jmax_write_batch_size;
180 }
181
182 /*
183 * Class: org_rocksdb_TransactionOptions
184 * Method: disposeInternal
185 * Signature: (J)V
186 */
Java_org_rocksdb_TransactionOptions_disposeInternal(JNIEnv *,jobject,jlong jhandle)187 void Java_org_rocksdb_TransactionOptions_disposeInternal(JNIEnv* /*env*/,
188 jobject /*jobj*/,
189 jlong jhandle) {
190 delete reinterpret_cast<ROCKSDB_NAMESPACE::TransactionOptions*>(jhandle);
191 }
192