167 lines
4.9 KiB
C++
167 lines
4.9 KiB
C++
|
// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
|
||
|
// This source code is licensed under both the GPLv2 (found in the
|
||
|
// COPYING file in the root directory) and Apache 2.0 License
|
||
|
// (found in the LICENSE.Apache file in the root directory).
|
||
|
//
|
||
|
// This file implements the "bridge" between Java and C++
|
||
|
// for rocksdb::TransactionOptions.
|
||
|
|
||
|
#include <jni.h>
|
||
|
|
||
|
#include "include/org_rocksdb_TransactionOptions.h"
|
||
|
|
||
|
#include "rocksdb/utilities/transaction_db.h"
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: newTransactionOptions
|
||
|
* Signature: ()J
|
||
|
*/
|
||
|
jlong Java_org_rocksdb_TransactionOptions_newTransactionOptions(JNIEnv* env,
|
||
|
jclass jcls) {
|
||
|
auto* opts = new rocksdb::TransactionOptions();
|
||
|
return reinterpret_cast<jlong>(opts);
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: isSetSnapshot
|
||
|
* Signature: (J)Z
|
||
|
*/
|
||
|
jboolean Java_org_rocksdb_TransactionOptions_isSetSnapshot(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->set_snapshot;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setSetSnapshot
|
||
|
* Signature: (JZ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setSetSnapshot(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle, jboolean jset_snapshot) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->set_snapshot = jset_snapshot;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: isDeadlockDetect
|
||
|
* Signature: (J)Z
|
||
|
*/
|
||
|
jboolean Java_org_rocksdb_TransactionOptions_isDeadlockDetect(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->deadlock_detect;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setDeadlockDetect
|
||
|
* Signature: (JZ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setDeadlockDetect(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle, jboolean jdeadlock_detect) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->deadlock_detect = jdeadlock_detect;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: getLockTimeout
|
||
|
* Signature: (J)J
|
||
|
*/
|
||
|
jlong Java_org_rocksdb_TransactionOptions_getLockTimeout(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->lock_timeout;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setLockTimeout
|
||
|
* Signature: (JJ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setLockTimeout(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle, jlong jlock_timeout) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->lock_timeout = jlock_timeout;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: getExpiration
|
||
|
* Signature: (J)J
|
||
|
*/
|
||
|
jlong Java_org_rocksdb_TransactionOptions_getExpiration(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->expiration;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setExpiration
|
||
|
* Signature: (JJ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setExpiration(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle, jlong jexpiration) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->expiration = jexpiration;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: getDeadlockDetectDepth
|
||
|
* Signature: (J)J
|
||
|
*/
|
||
|
jlong Java_org_rocksdb_TransactionOptions_getDeadlockDetectDepth(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->deadlock_detect_depth;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setDeadlockDetectDepth
|
||
|
* Signature: (JJ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setDeadlockDetectDepth(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle, jlong jdeadlock_detect_depth) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->deadlock_detect_depth = jdeadlock_detect_depth;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: getMaxWriteBatchSize
|
||
|
* Signature: (J)J
|
||
|
*/
|
||
|
jlong Java_org_rocksdb_TransactionOptions_getMaxWriteBatchSize(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
return opts->max_write_batch_size;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: setMaxWriteBatchSize
|
||
|
* Signature: (JJ)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_setMaxWriteBatchSize(
|
||
|
JNIEnv* env, jobject jobj, jlong jhandle, jlong jmax_write_batch_size) {
|
||
|
auto* opts = reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
opts->max_write_batch_size = jmax_write_batch_size;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Class: org_rocksdb_TransactionOptions
|
||
|
* Method: disposeInternal
|
||
|
* Signature: (J)V
|
||
|
*/
|
||
|
void Java_org_rocksdb_TransactionOptions_disposeInternal(JNIEnv* env,
|
||
|
jobject jobj, jlong jhandle) {
|
||
|
delete reinterpret_cast<rocksdb::TransactionOptions*>(jhandle);
|
||
|
}
|