| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 | // 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_NAMESPACE::CompactionOptions.#include <jni.h>#include "include/org_rocksdb_CompactionOptions.h"#include "rocksdb/options.h"#include "rocksjni/portal.h"/* * Class:     org_rocksdb_CompactionOptions * Method:    newCompactionOptions * Signature: ()J */jlong Java_org_rocksdb_CompactionOptions_newCompactionOptions(    JNIEnv*, jclass) {  auto* compact_opts = new ROCKSDB_NAMESPACE::CompactionOptions();  return reinterpret_cast<jlong>(compact_opts);}/* * Class:     org_rocksdb_CompactionOptions * Method:    disposeInternal * Signature: (J)V */void Java_org_rocksdb_CompactionOptions_disposeInternal(    JNIEnv *, jobject, jlong jhandle) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  delete compact_opts;}/* * Class:     org_rocksdb_CompactionOptions * Method:    compression * Signature: (J)B */jbyte Java_org_rocksdb_CompactionOptions_compression(    JNIEnv*, jclass, jlong jhandle) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  return ROCKSDB_NAMESPACE::CompressionTypeJni::toJavaCompressionType(      compact_opts->compression);}/* * Class:     org_rocksdb_CompactionOptions * Method:    setCompression * Signature: (JB)V */void Java_org_rocksdb_CompactionOptions_setCompression(    JNIEnv*, jclass, jlong jhandle, jbyte jcompression_type_value) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  compact_opts->compression =      ROCKSDB_NAMESPACE::CompressionTypeJni::toCppCompressionType(          jcompression_type_value);}/* * Class:     org_rocksdb_CompactionOptions * Method:    outputFileSizeLimit * Signature: (J)J */jlong Java_org_rocksdb_CompactionOptions_outputFileSizeLimit(    JNIEnv*, jclass, jlong jhandle) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  return static_cast<jlong>(      compact_opts->output_file_size_limit);}/* * Class:     org_rocksdb_CompactionOptions * Method:    setOutputFileSizeLimit * Signature: (JJ)V */void Java_org_rocksdb_CompactionOptions_setOutputFileSizeLimit(    JNIEnv*, jclass, jlong jhandle, jlong joutput_file_size_limit) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  compact_opts->output_file_size_limit =      static_cast<uint64_t>(joutput_file_size_limit);}/* * Class:     org_rocksdb_CompactionOptions * Method:    maxSubcompactions * Signature: (J)I */jint Java_org_rocksdb_CompactionOptions_maxSubcompactions(    JNIEnv*, jclass, jlong jhandle) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  return static_cast<jint>(      compact_opts->max_subcompactions);}/* * Class:     org_rocksdb_CompactionOptions * Method:    setMaxSubcompactions * Signature: (JI)V */void Java_org_rocksdb_CompactionOptions_setMaxSubcompactions(    JNIEnv*, jclass, jlong jhandle, jint jmax_subcompactions) {  auto* compact_opts =      reinterpret_cast<ROCKSDB_NAMESPACE::CompactionOptions*>(jhandle);  compact_opts->max_subcompactions =      static_cast<uint32_t>(jmax_subcompactions);}
 |