fork of https://github.com/oxigraph/rocksdb and https://github.com/facebook/rocksdb for nextgraph and oxigraph
				
			
			
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							68 lines
						
					
					
						
							2.2 KiB
						
					
					
				
			
		
		
	
	
							68 lines
						
					
					
						
							2.2 KiB
						
					
					
				| // Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
 | |
| // This source code is licensed under the BSD-style license found in the
 | |
| // LICENSE file in the root directory of this source tree. An additional grant
 | |
| // of patent rights can be found in the PATENTS file in the same directory.
 | |
| //
 | |
| // This file implements the "bridge" between Java and C++ for
 | |
| // rocksdb::Comparator.
 | |
| 
 | |
| #include <stdio.h>
 | |
| #include <stdlib.h>
 | |
| #include <jni.h>
 | |
| #include <string>
 | |
| #include <functional>
 | |
| 
 | |
| #include "include/org_rocksdb_AbstractComparator.h"
 | |
| #include "include/org_rocksdb_Comparator.h"
 | |
| #include "include/org_rocksdb_DirectComparator.h"
 | |
| #include "rocksjni/comparatorjnicallback.h"
 | |
| #include "rocksjni/portal.h"
 | |
| 
 | |
| // <editor-fold desc="org.rocksdb.AbstractComparator>
 | |
| 
 | |
| /*
 | |
|  * Class:     org_rocksdb_AbstractComparator
 | |
|  * Method:    disposeInternal
 | |
|  * Signature: (J)V
 | |
|  */
 | |
| void Java_org_rocksdb_AbstractComparator_disposeInternal(
 | |
|     JNIEnv* env, jobject jobj, jlong handle) {
 | |
|   auto* bcjc = reinterpret_cast<rocksdb::BaseComparatorJniCallback*>(handle);
 | |
|   assert(bcjc != nullptr);
 | |
|   delete bcjc;
 | |
| }
 | |
| // </editor-fold>
 | |
| 
 | |
| // <editor-fold desc="org.rocksdb.Comparator>
 | |
| 
 | |
| /*
 | |
|  * Class:     org_rocksdb_Comparator
 | |
|  * Method:    createNewComparator0
 | |
|  * Signature: ()J
 | |
|  */
 | |
| jlong Java_org_rocksdb_Comparator_createNewComparator0(
 | |
|     JNIEnv* env, jobject jobj, jlong copt_handle) {
 | |
|   const rocksdb::ComparatorJniCallbackOptions* copt =
 | |
|     reinterpret_cast<rocksdb::ComparatorJniCallbackOptions*>(copt_handle);
 | |
|   const rocksdb::ComparatorJniCallback* c =
 | |
|     new rocksdb::ComparatorJniCallback(env, jobj, copt);
 | |
|   return reinterpret_cast<jlong>(c);
 | |
| }
 | |
| // </editor-fold>
 | |
| 
 | |
| // <editor-fold desc="org.rocksdb.DirectComparator>
 | |
| 
 | |
| /*
 | |
|  * Class:     org_rocksdb_DirectComparator
 | |
|  * Method:    createNewDirectComparator0
 | |
|  * Signature: ()J
 | |
|  */
 | |
| jlong Java_org_rocksdb_DirectComparator_createNewDirectComparator0(
 | |
|     JNIEnv* env, jobject jobj, jlong copt_handle) {
 | |
|   const rocksdb::ComparatorJniCallbackOptions* copt =
 | |
|     reinterpret_cast<rocksdb::ComparatorJniCallbackOptions*>(copt_handle);
 | |
|   const rocksdb::DirectComparatorJniCallback* c =
 | |
|     new rocksdb::DirectComparatorJniCallback(env, jobj, copt);
 | |
|   return reinterpret_cast<jlong>(c);
 | |
| }
 | |
| // </editor-fold>
 | |
| 
 |