diff --git a/gradle.properties b/gradle.properties index bfb16679..974a46f2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ TILEDB_GIT_REPOSITORY=https://github.com/TileDB-Inc/TileDB -TILEDB_GIT_TAG=2.1.2 +TILEDB_GIT_TAG=2.2.2 TILEDB_VERBOSE=OFF TILEDB_S3=ON TILEDB_AZURE=OFF diff --git a/src/main/c/custom/tiledb_custom.cxx b/src/main/c/custom/tiledb_custom.cxx index e750e41c..62388d61 100644 --- a/src/main/c/custom/tiledb_custom.cxx +++ b/src/main/c/custom/tiledb_custom.cxx @@ -1132,6 +1132,148 @@ extern "C" { return jresult; } + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1subarray_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3) { + void* buffer = (void *)jenv->GetDirectBufferAddress(jarg3); + + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + void *arg3 = (void *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = *(void **)&jarg3; + result = (int32_t)tiledb_query_set_subarray(arg1,arg2,buffer); + jresult = (jint)result; + return jresult; + } + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5) { + void* buffer = (void *)jenv->GetDirectBufferAddress(jarg4); + + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + void *arg4 = (void *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + result = (int32_t)tiledb_query_set_buffer(arg1,arg2,(char const *)arg3, buffer,arg5); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; + } + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jobject jarg6, jlong jarg7) { + void* offsets = (void *)jenv->GetDirectBufferAddress(jarg4); + void* buffer = (void *)jenv->GetDirectBufferAddress(jarg6); + + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + void *arg6 = (void *) 0 ; + uint64_t *arg7 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(void **)&jarg6; + arg7 = *(uint64_t **)&jarg7; + result = (int32_t)tiledb_query_set_buffer_var(arg1,arg2,(char const *)arg3,(uint64_t *)offsets,arg5,buffer,arg7); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; + } + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1nullable_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jobject jarg6, jlong jarg7) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + void *arg4 = (void *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint8_t *arg6 = (uint8_t *) 0 ; + uint64_t *arg7 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint8_t **)&jarg6; + arg7 = *(uint64_t **)&jarg7; + result = (int32_t)tiledb_query_set_buffer_nullable(arg1,arg2,(char const *)arg3,(void *)jenv->GetDirectBufferAddress(jarg4),arg5,(uint8_t *)jenv->GetDirectBufferAddress(jarg6),arg7); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; + } + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var_1nullable_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jobject jarg6, jlong jarg7, jobject jarg8, jlong jarg9) { + uint64_t * offsets = (uint64_t *)jenv->GetDirectBufferAddress(jarg4); + void * values = (void *)jenv->GetDirectBufferAddress(jarg6); + uint8_t * validity_bytemap = (uint8_t *)jenv->GetDirectBufferAddress(jarg8); + + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg7 = (uint64_t *) 0 ; + uint64_t *arg9 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg5 = *(uint64_t **)&jarg5; + arg7 = *(uint64_t **)&jarg7; + arg9 = *(uint64_t **)&jarg9; + result = (int32_t)tiledb_query_set_buffer_var_nullable(arg1,arg2,(char const *)arg3, offsets, arg5, values, arg7, validity_bytemap, arg9); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; + } + #ifdef __cplusplus } diff --git a/src/main/c/generated/tiledb_wrap.cxx b/src/main/c/generated/tiledb_wrap.cxx index 618ddf60..1e028984 100644 --- a/src/main/c/generated/tiledb_wrap.cxx +++ b/src/main/c/generated/tiledb_wrap.cxx @@ -5432,6 +5432,24 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1config_1save_ } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1config_1compare(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_config_t *arg1 = (tiledb_config_t *) 0 ; + tiledb_config_t *arg2 = (tiledb_config_t *) 0 ; + uint8_t *arg3 = (uint8_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_config_t **)&jarg1; + arg2 = *(tiledb_config_t **)&jarg2; + arg3 = *(uint8_t **)&jarg3; + result = (int32_t)tiledb_config_compare(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1config_1iter_1alloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; tiledb_config_t *arg1 = (tiledb_config_t *) 0 ; @@ -5924,6 +5942,24 @@ SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1fr } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1set_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jshort jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_attribute_t *arg2 = (tiledb_attribute_t *) 0 ; + uint8_t arg3 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_attribute_t **)&jarg2; + arg3 = (uint8_t)jarg3; + result = (int32_t)tiledb_attribute_set_nullable(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1set_1filter_1list(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -5996,6 +6032,24 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1ge } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1get_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_attribute_t *arg2 = (tiledb_attribute_t *) 0 ; + uint8_t *arg3 = (uint8_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_attribute_t **)&jarg2; + arg3 = *(uint8_t **)&jarg3; + result = (int32_t)tiledb_attribute_get_nullable(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1get_1filter_1list(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -6133,6 +6187,75 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1ge } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1set_1fill_1value_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jshort jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_attribute_t *arg2 = (tiledb_attribute_t *) 0 ; + void *arg3 = (void *) 0 ; + uint64_t arg4 ; + uint8_t arg5 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_attribute_t **)&jarg2; + arg3 = *(void **)&jarg3; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg4) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg4); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg4 = 0; + if (sz > 0) { + arg4 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + arg5 = (uint8_t)jarg5; + result = (int32_t)tiledb_attribute_set_fill_value_nullable(arg1,arg2,(void const *)arg3,arg4,arg5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1attribute_1get_1fill_1value_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_attribute_t *arg2 = (tiledb_attribute_t *) 0 ; + void **arg3 = (void **) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint8_t *arg5 = (uint8_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_attribute_t **)&jarg2; + arg3 = *(void ***)&jarg3; + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint8_t **)&jarg5; + result = (int32_t)tiledb_attribute_get_fill_value_nullable(arg1,arg2,(void const **)arg3,arg4,arg5); + jresult = (jint)result; + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1domain_1alloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -7037,39 +7160,38 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1alloc( } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1subarray(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1config(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - void *arg3 = (void *) 0 ; + tiledb_config_t *arg3 = (tiledb_config_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_query_t **)&jarg2; - arg3 = *(void **)&jarg3; - result = (int32_t)tiledb_query_set_subarray(arg1,arg2,(void const *)arg3); + arg3 = *(tiledb_config_t **)&jarg3; + result = (int32_t)tiledb_query_set_config(arg1,arg2,arg3); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1subarray_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3) { - void* buffer = (void *)jenv->GetDirectBufferAddress(jarg3); +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1subarray(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; void *arg3 = (void *) 0 ; int32_t result; - + (void)jenv; (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; - arg3 = *(void **)&jarg3; - result = (int32_t)tiledb_query_set_subarray(arg1,arg2,buffer); - jresult = (jint)result; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = *(void **)&jarg3; + result = (int32_t)tiledb_query_set_subarray(arg1,arg2,(void const *)arg3); + jresult = (jint)result; return jresult; } @@ -7100,43 +7222,46 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1b return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5) { - void* buffer = (void *)jenv->GetDirectBufferAddress(jarg4); +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; char *arg3 = (char *) 0 ; - void *arg4 = (void *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; uint64_t *arg5 = (uint64_t *) 0 ; + void *arg6 = (void *) 0 ; + uint64_t *arg7 = (uint64_t *) 0 ; int32_t result; - + (void)jenv; (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; arg3 = 0; if (jarg3) { arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); if (!arg3) return 0; } - arg4 = *(void **)&jarg4; - arg5 = *(uint64_t **)&jarg5; - result = (int32_t)tiledb_query_set_buffer(arg1,arg2,(char const *)arg3, buffer,arg5); - jresult = (jint)result; + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(void **)&jarg6; + arg7 = *(uint64_t **)&jarg7; + result = (int32_t)tiledb_query_set_buffer_var(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7); + jresult = (jint)result; if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; char *arg3 = (char *) 0 ; - uint64_t *arg4 = (uint64_t *) 0 ; + void *arg4 = (void *) 0 ; uint64_t *arg5 = (uint64_t *) 0 ; - void *arg6 = (void *) 0 ; + uint8_t *arg6 = (uint8_t *) 0 ; uint64_t *arg7 = (uint64_t *) 0 ; int32_t result; @@ -7149,20 +7274,18 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1b arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); if (!arg3) return 0; } - arg4 = *(uint64_t **)&jarg4; + arg4 = *(void **)&jarg4; arg5 = *(uint64_t **)&jarg5; - arg6 = *(void **)&jarg6; + arg6 = *(uint8_t **)&jarg6; arg7 = *(uint64_t **)&jarg7; - result = (int32_t)tiledb_query_set_buffer_var(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7); + result = (int32_t)tiledb_query_set_buffer_nullable(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7); jresult = (jint)result; if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var_1nio(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jobject jarg6, jlong jarg7) { - void* offsets = (void *)jenv->GetDirectBufferAddress(jarg4); - void* buffer = (void *)jenv->GetDirectBufferAddress(jarg6); +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1buffer_1var_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7, jlong jarg8, jlong jarg9) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; @@ -7171,23 +7294,27 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1b uint64_t *arg5 = (uint64_t *) 0 ; void *arg6 = (void *) 0 ; uint64_t *arg7 = (uint64_t *) 0 ; + uint8_t *arg8 = (uint8_t *) 0 ; + uint64_t *arg9 = (uint64_t *) 0 ; int32_t result; - + (void)jenv; (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; arg3 = 0; if (jarg3) { arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); if (!arg3) return 0; } - arg4 = *(uint64_t **)&jarg4; - arg5 = *(uint64_t **)&jarg5; - arg6 = *(void **)&jarg6; - arg7 = *(uint64_t **)&jarg7; - result = (int32_t)tiledb_query_set_buffer_var(arg1,arg2,(char const *)arg3,(uint64_t *)offsets,arg5,buffer,arg7); - jresult = (jint)result; + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(void **)&jarg6; + arg7 = *(uint64_t **)&jarg7; + arg8 = *(uint8_t **)&jarg8; + arg9 = *(uint64_t **)&jarg9; + result = (int32_t)tiledb_query_set_buffer_var_nullable(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9); + jresult = (jint)result; if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } @@ -7251,6 +7378,72 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1b } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1buffer_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + void **arg4 = (void **) 0 ; + uint64_t **arg5 = (uint64_t **) 0 ; + uint8_t **arg6 = (uint8_t **) 0 ; + uint64_t **arg7 = (uint64_t **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void ***)&jarg4; + arg5 = *(uint64_t ***)&jarg5; + arg6 = *(uint8_t ***)&jarg6; + arg7 = *(uint64_t ***)&jarg7; + result = (int32_t)tiledb_query_get_buffer_nullable(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1buffer_1var_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6, jlong jarg7, jlong jarg8, jlong jarg9) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t **arg4 = (uint64_t **) 0 ; + uint64_t **arg5 = (uint64_t **) 0 ; + void **arg6 = (void **) 0 ; + uint64_t **arg7 = (uint64_t **) 0 ; + uint8_t **arg8 = (uint8_t **) 0 ; + uint64_t **arg9 = (uint64_t **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t ***)&jarg4; + arg5 = *(uint64_t ***)&jarg5; + arg6 = *(void ***)&jarg6; + arg7 = *(uint64_t ***)&jarg7; + arg8 = *(uint8_t ***)&jarg8; + arg9 = *(uint64_t ***)&jarg9; + result = (int32_t)tiledb_query_get_buffer_var_nullable(arg1,arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1set_1layout(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -7445,6 +7638,35 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1add_1r } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1add_1range_1by_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + void *arg4 = (void *) 0 ; + void *arg5 = (void *) 0 ; + void *arg6 = (void *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void **)&jarg4; + arg5 = *(void **)&jarg5; + arg6 = *(void **)&jarg6; + result = (int32_t)tiledb_query_add_range_by_name(arg1,arg2,(char const *)arg3,(void const *)arg4,(void const *)arg5,(void const *)arg6); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1add_1range_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jobject jarg5, jlong jarg6, jobject jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -7521,32 +7743,138 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1add_1r } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1add_1range_1var_1by_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jobject jarg5, jlong jarg6, jobject jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint32_t arg3 ; - uint64_t *arg4 = (uint64_t *) 0 ; + char *arg3 = (char *) 0 ; + void *arg4 = (void *) 0 ; + uint64_t arg5 ; + void *arg6 = (void *) 0 ; + uint64_t arg7 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_query_t **)&jarg2; - arg3 = (uint32_t)jarg3; - arg4 = *(uint64_t **)&jarg4; - result = (int32_t)tiledb_query_get_range_num(arg1,(tiledb_query_t const *)arg2,arg3,arg4); - jresult = (jint)result; - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint32_t arg3 ; - uint64_t arg4 ; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void **)&jarg4; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg5) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg5); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg5, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg5 = 0; + if (sz > 0) { + arg5 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + arg6 = *(void **)&jarg6; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg7) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg7); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg7, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg7 = 0; + if (sz > 0) { + arg7 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + result = (int32_t)tiledb_query_add_range_var_by_name(arg1,arg2,(char const *)arg3,(void const *)arg4,arg5,(void const *)arg6,arg7); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + uint32_t arg3 ; + uint64_t *arg4 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(uint64_t **)&jarg4; + result = (int32_t)tiledb_query_get_range_num(arg1,(tiledb_query_t const *)arg2,arg3,arg4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1num_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t **)&jarg4; + result = (int32_t)tiledb_query_get_range_num_from_name(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + uint32_t arg3 ; + uint64_t arg4 ; void **arg5 = (void **) 0 ; void **arg6 = (void **) 0 ; void **arg7 = (void **) 0 ; @@ -7592,21 +7920,26 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1r } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jlong jarg6, jlong jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint32_t arg3 ; + char *arg3 = (char *) 0 ; uint64_t arg4 ; - uint64_t *arg5 = (uint64_t *) 0 ; - uint64_t *arg6 = (uint64_t *) 0 ; + void **arg5 = (void **) 0 ; + void **arg6 = (void **) 0 ; + void **arg7 = (void **) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_query_t **)&jarg2; - arg3 = (uint32_t)jarg3; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } { jclass clazz; jmethodID mid; @@ -7633,22 +7966,24 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1r } jenv->ReleaseByteArrayElements(ba, bae, 0); } - arg5 = *(uint64_t **)&jarg5; - arg6 = *(uint64_t **)&jarg6; - result = (int32_t)tiledb_query_get_range_var_size(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5,arg6); + arg5 = *(void ***)&jarg5; + arg6 = *(void ***)&jarg6; + arg7 = *(void ***)&jarg7; + result = (int32_t)tiledb_query_get_range_from_name(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,(void const **)arg5,(void const **)arg6,(void const **)arg7); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; uint32_t arg3 ; uint64_t arg4 ; - void *arg5 = (void *) 0 ; - void *arg6 = (void *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg6 = (uint64_t *) 0 ; int32_t result; (void)jenv; @@ -7682,46 +8017,22 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1r } jenv->ReleaseByteArrayElements(ba, bae, 0); } - arg5 = *(void **)&jarg5; - arg6 = *(void **)&jarg6; - result = (int32_t)tiledb_query_get_range_var(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5,arg6); - jresult = (jint)result; - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - char *arg3 = (char *) 0 ; - uint64_t *arg4 = (uint64_t *) 0 ; - int32_t result; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; - arg3 = 0; - if (jarg3) { - arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); - if (!arg3) return 0; - } - arg4 = *(uint64_t **)&jarg4; - result = (int32_t)tiledb_query_get_est_result_size(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4); + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint64_t **)&jarg6; + result = (int32_t)tiledb_query_get_range_var_size(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5,arg6); jresult = (jint)result; - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var_1size_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; char *arg3 = (char *) 0 ; - uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t arg4 ; uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg6 = (uint64_t *) 0 ; int32_t result; (void)jenv; @@ -7733,45 +8044,6 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1e arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); if (!arg3) return 0; } - arg4 = *(uint64_t **)&jarg4; - arg5 = *(uint64_t **)&jarg5; - result = (int32_t)tiledb_query_get_est_result_size_var(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5); - jresult = (jint)result; - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint32_t *arg3 = (uint32_t *) 0 ; - int32_t result; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; - arg3 = *(uint32_t **)&jarg3; - result = (int32_t)tiledb_query_get_fragment_num(arg1,(tiledb_query_t const *)arg2,arg3); - jresult = (jint)result; - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1uri(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3, jlong jarg4) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint64_t arg3 ; - char **arg4 = (char **) 0 ; - int32_t result; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_query_t **)&jarg2; { jclass clazz; jmethodID mid; @@ -7780,44 +8052,48 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1f jsize sz; int i; - if (!jarg3) { + if (!jarg4) { SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); return 0; } - clazz = jenv->GetObjectClass(jarg3); + clazz = jenv->GetObjectClass(jarg4); mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); - ba = (jbyteArray)jenv->CallObjectMethod(jarg3, mid); + ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); bae = jenv->GetByteArrayElements(ba, 0); sz = jenv->GetArrayLength(ba); - arg3 = 0; + arg4 = 0; if (sz > 0) { - arg3 = (uint64_t)(signed char)bae[0]; + arg4 = (uint64_t)(signed char)bae[0]; for(i=1; iReleaseByteArrayElements(ba, bae, 0); } - arg4 = *(char ***)&jarg4; - result = (int32_t)tiledb_query_get_fragment_uri(arg1,(tiledb_query_t const *)arg2,arg3,(char const **)arg4); + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint64_t **)&jarg6; + result = (int32_t)tiledb_query_get_range_var_size_from_name(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5,arg6); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1timestamp_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3, jlong jarg4, jlong jarg5) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; - uint64_t arg3 ; - uint64_t *arg4 = (uint64_t *) 0 ; - uint64_t *arg5 = (uint64_t *) 0 ; + uint32_t arg3 ; + uint64_t arg4 ; + void *arg5 = (void *) 0 ; + void *arg6 = (void *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_query_t **)&jarg2; + arg3 = (uint32_t)jarg3; { jclass clazz; jmethodID mid; @@ -7826,86 +8102,51 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1f jsize sz; int i; - if (!jarg3) { + if (!jarg4) { SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); return 0; } - clazz = jenv->GetObjectClass(jarg3); + clazz = jenv->GetObjectClass(jarg4); mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); - ba = (jbyteArray)jenv->CallObjectMethod(jarg3, mid); + ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); bae = jenv->GetByteArrayElements(ba, 0); sz = jenv->GetArrayLength(ba); - arg3 = 0; + arg4 = 0; if (sz > 0) { - arg3 = (uint64_t)(signed char)bae[0]; + arg4 = (uint64_t)(signed char)bae[0]; for(i=1; iReleaseByteArrayElements(ba, bae, 0); } - arg4 = *(uint64_t **)&jarg4; - arg5 = *(uint64_t **)&jarg5; - result = (int32_t)tiledb_query_get_fragment_timestamp_range(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5); - jresult = (jint)result; - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1alloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_array_t **arg3 = (tiledb_array_t **) 0 ; - int32_t result; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = *(tiledb_array_t ***)&jarg3; - result = (int32_t)tiledb_array_alloc(arg1,(char const *)arg2,arg3); - jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); - return jresult; -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) { - jint jresult = 0 ; - tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_query_type_t arg3 ; - int32_t result; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = (tiledb_query_type_t)jarg3; - result = (int32_t)tiledb_array_open(arg1,arg2,arg3); + arg5 = *(void **)&jarg5; + arg6 = *(void **)&jarg6; + result = (int32_t)tiledb_query_get_range_var(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5,arg6); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jobject jarg4) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1range_1var_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jobject jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_query_type_t arg3 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; uint64_t arg4 ; + void *arg5 = (void *) 0 ; + void *arg6 = (void *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = (tiledb_query_type_t)jarg3; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } { jclass clazz; jmethodID mid; @@ -7932,132 +8173,153 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1 } jenv->ReleaseByteArrayElements(ba, bae, 0); } - result = (int32_t)tiledb_array_open_at(arg1,arg2,arg3,arg4); + arg5 = *(void **)&jarg5; + arg6 = *(void **)&jarg6; + result = (int32_t)tiledb_query_get_range_var_from_name(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5,arg6); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jint jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_query_type_t arg3 ; - tiledb_encryption_type_t arg4 ; - void *arg5 = (void *) 0 ; - uint32_t arg6 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = (tiledb_query_type_t)jarg3; - arg4 = (tiledb_encryption_type_t)jarg4; - arg5 = *(void **)&jarg5; - arg6 = (uint32_t)jarg6; - result = (int32_t)tiledb_array_open_with_key(arg1,arg2,arg3,arg4,(void const *)arg5,arg6); + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t **)&jarg4; + result = (int32_t)tiledb_query_get_est_result_size(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1at_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jint jarg4, jlong jarg5, jlong jarg6, jobject jarg7) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size_1var(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_query_type_t arg3 ; - tiledb_encryption_type_t arg4 ; - void *arg5 = (void *) 0 ; - uint32_t arg6 ; - uint64_t arg7 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = (tiledb_query_type_t)jarg3; - arg4 = (tiledb_encryption_type_t)jarg4; - arg5 = *(void **)&jarg5; - arg6 = (uint32_t)jarg6; - { - jclass clazz; - jmethodID mid; - jbyteArray ba; - jbyte* bae; - jsize sz; - int i; - - if (!jarg7) { - SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); - return 0; - } - clazz = jenv->GetObjectClass(jarg7); - mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); - ba = (jbyteArray)jenv->CallObjectMethod(jarg7, mid); - bae = jenv->GetByteArrayElements(ba, 0); - sz = jenv->GetArrayLength(ba); - arg7 = 0; - if (sz > 0) { - arg7 = (uint64_t)(signed char)bae[0]; - for(i=1; iReleaseByteArrayElements(ba, bae, 0); + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; } - result = (int32_t)tiledb_array_open_at_with_key(arg1,arg2,arg3,arg4,(void const *)arg5,arg6,arg7); + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + result = (int32_t)tiledb_query_get_est_result_size_var(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1is_1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - int32_t *arg3 = (int32_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = *(int32_t **)&jarg3; - result = (int32_t)tiledb_array_is_open(arg1,arg2,arg3); + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + result = (int32_t)tiledb_query_get_est_result_size_nullable(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1reopen(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1est_1result_1size_1var_1nullable(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + char *arg3 = (char *) 0 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg6 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - result = (int32_t)tiledb_array_reopen(arg1,arg2); + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint64_t **)&jarg6; + result = (int32_t)tiledb_query_get_est_result_size_var_nullable(arg1,(tiledb_query_t const *)arg2,(char const *)arg3,arg4,arg5,arg6); jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1reopen_1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + uint32_t *arg3 = (uint32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_query_t **)&jarg2; + arg3 = *(uint32_t **)&jarg3; + result = (int32_t)tiledb_query_get_fragment_num(arg1,(tiledb_query_t const *)arg2,arg3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1uri(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; uint64_t arg3 ; + char **arg4 = (char **) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; + arg2 = *(tiledb_query_t **)&jarg2; { jclass clazz; jmethodID mid; @@ -8084,289 +8346,575 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1reopen } jenv->ReleaseByteArrayElements(ba, bae, 0); } - result = (int32_t)tiledb_array_reopen_at(arg1,arg2,arg3); + arg4 = *(char ***)&jarg4; + result = (int32_t)tiledb_query_get_fragment_uri(arg1,(tiledb_query_t const *)arg2,arg3,(char const **)arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1timestamp(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1query_1get_1fragment_1timestamp_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3, jlong jarg4, jlong jarg5) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - uint64_t *arg3 = (uint64_t *) 0 ; + tiledb_query_t *arg2 = (tiledb_query_t *) 0 ; + uint64_t arg3 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - arg3 = *(uint64_t **)&jarg3; - result = (int32_t)tiledb_array_get_timestamp(arg1,arg2,arg3); + arg2 = *(tiledb_query_t **)&jarg2; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg3); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg3, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg3 = 0; + if (sz > 0) { + arg3 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + result = (int32_t)tiledb_query_get_fragment_timestamp_range(arg1,(tiledb_query_t const *)arg2,arg3,arg4,arg5); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1close(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1alloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_array_t **arg3 = (tiledb_array_t **) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_array_t **)&jarg2; - result = (int32_t)tiledb_array_close(arg1,arg2); - jresult = (jint)result; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_array_t ***)&jarg3; + result = (int32_t)tiledb_array_alloc(arg1,(char const *)arg2,arg3); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1free(JNIEnv *jenv, jclass jcls, jlong jarg1) { - tiledb_array_t **arg1 = (tiledb_array_t **) 0 ; - - (void)jenv; - (void)jcls; - arg1 = *(tiledb_array_t ***)&jarg1; - tiledb_array_free(arg1); -} - - -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1schema(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_array_schema_t **arg3 = (tiledb_array_schema_t **) 0 ; + tiledb_query_type_t arg3 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_array_t **)&jarg2; - arg3 = *(tiledb_array_schema_t ***)&jarg3; - result = (int32_t)tiledb_array_get_schema(arg1,arg2,arg3); + arg3 = (tiledb_query_type_t)jarg3; + result = (int32_t)tiledb_array_open(arg1,arg2,arg3); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1query_1type(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jobject jarg4) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - tiledb_query_type_t *arg3 = (tiledb_query_type_t *) 0 ; + tiledb_query_type_t arg3 ; + uint64_t arg4 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_array_t **)&jarg2; - arg3 = *(tiledb_query_type_t **)&jarg3; - result = (int32_t)tiledb_array_get_query_type(arg1,arg2,arg3); + arg3 = (tiledb_query_type_t)jarg3; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg4) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg4); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg4 = 0; + if (sz > 0) { + arg4 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + result = (int32_t)tiledb_array_open_at(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1create(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jint jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_array_schema_t *arg3 = (tiledb_array_schema_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + tiledb_query_type_t arg3 ; + tiledb_encryption_type_t arg4 ; + void *arg5 = (void *) 0 ; + uint32_t arg6 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = *(tiledb_array_schema_t **)&jarg3; - result = (int32_t)tiledb_array_create(arg1,(char const *)arg2,(tiledb_array_schema_t const *)arg3); + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = (tiledb_query_type_t)jarg3; + arg4 = (tiledb_encryption_type_t)jarg4; + arg5 = *(void **)&jarg5; + arg6 = (uint32_t)jarg6; + result = (int32_t)tiledb_array_open_with_key(arg1,arg2,arg3,arg4,(void const *)arg5,arg6); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1create_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3, jint jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1open_1at_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jint jarg4, jlong jarg5, jlong jarg6, jobject jarg7) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_array_schema_t *arg3 = (tiledb_array_schema_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + tiledb_query_type_t arg3 ; tiledb_encryption_type_t arg4 ; void *arg5 = (void *) 0 ; uint32_t arg6 ; + uint64_t arg7 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = *(tiledb_array_schema_t **)&jarg3; + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = (tiledb_query_type_t)jarg3; arg4 = (tiledb_encryption_type_t)jarg4; arg5 = *(void **)&jarg5; arg6 = (uint32_t)jarg6; - result = (int32_t)tiledb_array_create_with_key(arg1,(char const *)arg2,(tiledb_array_schema_t const *)arg3,arg4,(void const *)arg5,arg6); + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg7) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg7); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg7, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg7 = 0; + if (sz > 0) { + arg7 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + result = (int32_t)tiledb_array_open_at_with_key(arg1,arg2,arg3,arg4,(void const *)arg5,arg6,arg7); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1consolidate(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1is_1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_config_t *arg3 = (tiledb_config_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + int32_t *arg3 = (int32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = *(tiledb_config_t **)&jarg3; - result = (int32_t)tiledb_array_consolidate(arg1,(char const *)arg2,arg3); + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = *(int32_t **)&jarg3; + result = (int32_t)tiledb_array_is_open(arg1,arg2,arg3); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1consolidate_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1reopen(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_encryption_type_t arg3 ; - void *arg4 = (void *) 0 ; - uint32_t arg5 ; - tiledb_config_t *arg6 = (tiledb_config_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = (tiledb_encryption_type_t)jarg3; - arg4 = *(void **)&jarg4; - arg5 = (uint32_t)jarg5; - arg6 = *(tiledb_config_t **)&jarg6; - result = (int32_t)tiledb_array_consolidate_with_key(arg1,(char const *)arg2,arg3,(void const *)arg4,arg5,arg6); + arg2 = *(tiledb_array_t **)&jarg2; + result = (int32_t)tiledb_array_reopen(arg1,arg2); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1vacuum(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1reopen_1at(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jobject jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - tiledb_config_t *arg3 = (tiledb_config_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + uint64_t arg3 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; + arg2 = *(tiledb_array_t **)&jarg2; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg3) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg3); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg3, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg3 = 0; + if (sz > 0) { + arg3 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); } - arg3 = *(tiledb_config_t **)&jarg3; - result = (int32_t)tiledb_array_vacuum(arg1,(char const *)arg2,arg3); + result = (int32_t)tiledb_array_reopen_at(arg1,arg2,arg3); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1timestamp(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - void *arg3 = (void *) 0 ; - int32_t *arg4 = (int32_t *) 0 ; + uint64_t *arg3 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_array_t **)&jarg2; - arg3 = *(void **)&jarg3; - arg4 = *(int32_t **)&jarg4; - result = (int32_t)tiledb_array_get_non_empty_domain(arg1,arg2,arg3,arg4); + arg3 = *(uint64_t **)&jarg3; + result = (int32_t)tiledb_array_get_timestamp(arg1,arg2,arg3); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1close(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - uint32_t arg3 ; - void *arg4 = (void *) 0 ; - int32_t *arg5 = (int32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_array_t **)&jarg2; - arg3 = (uint32_t)jarg3; - arg4 = *(void **)&jarg4; - arg5 = *(int32_t **)&jarg5; - result = (int32_t)tiledb_array_get_non_empty_domain_from_index(arg1,arg2,arg3,arg4,arg5); + result = (int32_t)tiledb_array_close(arg1,arg2); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { +SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1free(JNIEnv *jenv, jclass jcls, jlong jarg1) { + tiledb_array_t **arg1 = (tiledb_array_t **) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_array_t ***)&jarg1; + tiledb_array_free(arg1); +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1schema(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; - char *arg3 = (char *) 0 ; - void *arg4 = (void *) 0 ; - int32_t *arg5 = (int32_t *) 0 ; + tiledb_array_schema_t **arg3 = (tiledb_array_schema_t **) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; arg2 = *(tiledb_array_t **)&jarg2; - arg3 = 0; - if (jarg3) { - arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); - if (!arg3) return 0; - } - arg4 = *(void **)&jarg4; - arg5 = *(int32_t **)&jarg5; - result = (int32_t)tiledb_array_get_non_empty_domain_from_name(arg1,arg2,(char const *)arg3,arg4,arg5); + arg3 = *(tiledb_array_schema_t ***)&jarg3; + result = (int32_t)tiledb_array_get_schema(arg1,arg2,arg3); jresult = (jint)result; - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1var_1size_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1query_1type(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + tiledb_query_type_t *arg3 = (tiledb_query_type_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = *(tiledb_query_type_t **)&jarg3; + result = (int32_t)tiledb_array_get_query_type(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1create(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_array_schema_t *arg3 = (tiledb_array_schema_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_array_schema_t **)&jarg3; + result = (int32_t)tiledb_array_create(arg1,(char const *)arg2,(tiledb_array_schema_t const *)arg3); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1create_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3, jint jarg4, jlong jarg5, jlong jarg6) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_array_schema_t *arg3 = (tiledb_array_schema_t *) 0 ; + tiledb_encryption_type_t arg4 ; + void *arg5 = (void *) 0 ; + uint32_t arg6 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_array_schema_t **)&jarg3; + arg4 = (tiledb_encryption_type_t)jarg4; + arg5 = *(void **)&jarg5; + arg6 = (uint32_t)jarg6; + result = (int32_t)tiledb_array_create_with_key(arg1,(char const *)arg2,(tiledb_array_schema_t const *)arg3,arg4,(void const *)arg5,arg6); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1consolidate(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_config_t *arg3 = (tiledb_config_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_config_t **)&jarg3; + result = (int32_t)tiledb_array_consolidate(arg1,(char const *)arg2,arg3); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1consolidate_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jint jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_encryption_type_t arg3 ; + void *arg4 = (void *) 0 ; + uint32_t arg5 ; + tiledb_config_t *arg6 = (tiledb_config_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = (tiledb_encryption_type_t)jarg3; + arg4 = *(void **)&jarg4; + arg5 = (uint32_t)jarg5; + arg6 = *(tiledb_config_t **)&jarg6; + result = (int32_t)tiledb_array_consolidate_with_key(arg1,(char const *)arg2,arg3,(void const *)arg4,arg5,arg6); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1vacuum(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_config_t *arg3 = (tiledb_config_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_config_t **)&jarg3; + result = (int32_t)tiledb_array_vacuum(arg1,(char const *)arg2,arg3); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + void *arg3 = (void *) 0 ; + int32_t *arg4 = (int32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = *(void **)&jarg3; + arg4 = *(int32_t **)&jarg4; + result = (int32_t)tiledb_array_get_non_empty_domain(arg1,arg2,arg3,arg4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + uint32_t arg3 ; + void *arg4 = (void *) 0 ; + int32_t *arg5 = (int32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(void **)&jarg4; + arg5 = *(int32_t **)&jarg5; + result = (int32_t)tiledb_array_get_non_empty_domain_from_index(arg1,arg2,arg3,arg4,arg5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; + char *arg3 = (char *) 0 ; + void *arg4 = (void *) 0 ; + int32_t *arg5 = (int32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_array_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(void **)&jarg4; + arg5 = *(int32_t **)&jarg5; + result = (int32_t)tiledb_array_get_non_empty_domain_from_name(arg1,arg2,(char const *)arg3,arg4,arg5); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1array_1get_1non_1empty_1domain_1var_1size_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; tiledb_array_t *arg2 = (tiledb_array_t *) 0 ; @@ -9348,6 +9896,36 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1copy_1fi } +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1copy_1dir(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jstring jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_t *arg2 = (tiledb_vfs_t *) 0 ; + char *arg3 = (char *) 0 ; + char *arg4 = (char *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = 0; + if (jarg4) { + arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0); + if (!arg4) return 0; + } + result = (int32_t)tiledb_vfs_copy_dir(arg1,arg2,(char const *)arg3,(char const *)arg4); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + if (arg4) jenv->ReleaseStringUTFChars(jarg4, (const char *)arg4); + return jresult; +} + + SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1open(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jint jarg4, jlong jarg5) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; @@ -9463,276 +10041,756 @@ SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1read(JNI } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1write(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1write(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jobject jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; + void *arg3 = (void *) 0 ; + uint64_t arg4 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_fh_t **)&jarg2; + arg3 = *(void **)&jarg3; + { + jclass clazz; + jmethodID mid; + jbyteArray ba; + jbyte* bae; + jsize sz; + int i; + + if (!jarg4) { + SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); + return 0; + } + clazz = jenv->GetObjectClass(jarg4); + mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); + ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); + bae = jenv->GetByteArrayElements(ba, 0); + sz = jenv->GetArrayLength(ba); + arg4 = 0; + if (sz > 0) { + arg4 = (uint64_t)(signed char)bae[0]; + for(i=1; iReleaseByteArrayElements(ba, bae, 0); + } + result = (int32_t)tiledb_vfs_write(arg1,arg2,(void const *)arg3,arg4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1sync(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_fh_t **)&jarg2; + result = (int32_t)tiledb_vfs_sync(arg1,arg2); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1ls(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_t *arg2 = (tiledb_vfs_t *) 0 ; + char *arg3 = (char *) 0 ; + int32_t (*arg4)(char const *,void *) = (int32_t (*)(char const *,void *)) 0 ; + void *arg5 = (void *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(int32_t (**)(char const *,void *))&jarg4; + arg5 = *(void **)&jarg5; + result = (int32_t)tiledb_vfs_ls(arg1,arg2,(char const *)arg3,arg4,arg5); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1fh_1free(JNIEnv *jenv, jclass jcls, jlong jarg1) { + tiledb_vfs_fh_t **arg1 = (tiledb_vfs_fh_t **) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_vfs_fh_t ***)&jarg1; + tiledb_vfs_fh_free(arg1); +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1fh_1is_1closed(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; + int32_t *arg3 = (int32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_fh_t **)&jarg2; + arg3 = *(int32_t **)&jarg3; + result = (int32_t)tiledb_vfs_fh_is_closed(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1touch(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_vfs_t *arg2 = (tiledb_vfs_t *) 0 ; + char *arg3 = (char *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_vfs_t **)&jarg2; + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + result = (int32_t)tiledb_vfs_touch(arg1,arg2,(char const *)arg3); + jresult = (jint)result; + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1uri_1to_1path(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jstring jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + uint32_t *arg4 = (uint32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = 0; + if (jarg3) { + arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); + if (!arg3) return 0; + } + arg4 = *(uint32_t **)&jarg4; + result = (int32_t)tiledb_uri_to_path(arg1,(char const *)arg2,arg3,arg4); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1enable(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + result = (int32_t)tiledb_stats_enable(); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1disable(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + result = (int32_t)tiledb_stats_disable(); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1reset(JNIEnv *jenv, jclass jcls) { + jint jresult = 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + result = (int32_t)tiledb_stats_reset(); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1dump(JNIEnv *jenv, jclass jcls, jlong jarg1) { + jint jresult = 0 ; + FILE *arg1 = (FILE *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(FILE **)&jarg1; + result = (int32_t)tiledb_stats_dump(arg1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1dump_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { + jint jresult = 0 ; + char **arg1 = (char **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(char ***)&jarg1; + result = (int32_t)tiledb_stats_dump_str(arg1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1raw_1dump(JNIEnv *jenv, jclass jcls, jlong jarg1) { + jint jresult = 0 ; + FILE *arg1 = (FILE *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(FILE **)&jarg1; + result = (int32_t)tiledb_stats_raw_dump(arg1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1raw_1dump_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { + jint jresult = 0 ; + char **arg1 = (char **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(char ***)&jarg1; + result = (int32_t)tiledb_stats_raw_dump_str(arg1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1free_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { + jint jresult = 0 ; + char **arg1 = (char **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(char ***)&jarg1; + result = (int32_t)tiledb_stats_free_str(arg1); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1alloc(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + char *arg2 = (char *) 0 ; + tiledb_fragment_info_t **arg3 = (tiledb_fragment_info_t **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = 0; + if (jarg2) { + arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); + if (!arg2) return 0; + } + arg3 = *(tiledb_fragment_info_t ***)&jarg3; + result = (int32_t)tiledb_fragment_info_alloc(arg1,(char const *)arg2,arg3); + jresult = (jint)result; + if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); + return jresult; +} + + +SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1free(JNIEnv *jenv, jclass jcls, jlong jarg1) { + tiledb_fragment_info_t **arg1 = (tiledb_fragment_info_t **) 0 ; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_fragment_info_t ***)&jarg1; + tiledb_fragment_info_free(arg1); +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1load(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + result = (int32_t)tiledb_fragment_info_load(arg1,arg2); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1load_1with_1key(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jint jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + tiledb_encryption_type_t arg3 ; + void *arg4 = (void *) 0 ; + uint32_t arg5 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (tiledb_encryption_type_t)jarg3; + arg4 = *(void **)&jarg4; + arg5 = (uint32_t)jarg5; + result = (int32_t)tiledb_fragment_info_load_with_key(arg1,arg2,arg3,(void const *)arg4,arg5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1fragment_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t *arg3 = (uint32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = *(uint32_t **)&jarg3; + result = (int32_t)tiledb_fragment_info_get_fragment_num(arg1,arg2,arg3); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1fragment_1uri(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + char **arg4 = (char **) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(char ***)&jarg4; + result = (int32_t)tiledb_fragment_info_get_fragment_uri(arg1,arg2,arg3,(char const **)arg4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1fragment_1size(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; - void *arg3 = (void *) 0 ; - uint64_t arg4 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint64_t *arg4 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_vfs_fh_t **)&jarg2; - arg3 = *(void **)&jarg3; - { - jclass clazz; - jmethodID mid; - jbyteArray ba; - jbyte* bae; - jsize sz; - int i; - - if (!jarg4) { - SWIG_JavaThrowException(jenv, SWIG_JavaNullPointerException, "BigInteger null"); - return 0; - } - clazz = jenv->GetObjectClass(jarg4); - mid = jenv->GetMethodID(clazz, "toByteArray", "()[B"); - ba = (jbyteArray)jenv->CallObjectMethod(jarg4, mid); - bae = jenv->GetByteArrayElements(ba, 0); - sz = jenv->GetArrayLength(ba); - arg4 = 0; - if (sz > 0) { - arg4 = (uint64_t)(signed char)bae[0]; - for(i=1; iReleaseByteArrayElements(ba, bae, 0); - } - result = (int32_t)tiledb_vfs_write(arg1,arg2,(void const *)arg3,arg4); + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(uint64_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_get_fragment_size(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1sync(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1dense(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + int32_t *arg4 = (int32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_vfs_fh_t **)&jarg2; - result = (int32_t)tiledb_vfs_sync(arg1,arg2); + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(int32_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_get_dense(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1ls(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3, jlong jarg4, jlong jarg5) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1sparse(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_vfs_t *arg2 = (tiledb_vfs_t *) 0 ; - char *arg3 = (char *) 0 ; - int32_t (*arg4)(char const *,void *) = (int32_t (*)(char const *,void *)) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + int32_t *arg4 = (int32_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(int32_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_get_sparse(arg1,arg2,arg3,arg4); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1timestamp_1range(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint64_t *arg4 = (uint64_t *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + int32_t result; + + (void)jenv; + (void)jcls; + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(uint64_t **)&jarg4; + arg5 = *(uint64_t **)&jarg5; + result = (int32_t)tiledb_fragment_info_get_timestamp_range(arg1,arg2,arg3,arg4,arg5); + jresult = (jint)result; + return jresult; +} + + +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint32_t arg4 ; void *arg5 = (void *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_vfs_t **)&jarg2; - arg3 = 0; - if (jarg3) { - arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); - if (!arg3) return 0; - } - arg4 = *(int32_t (**)(char const *,void *))&jarg4; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = (uint32_t)jarg4; arg5 = *(void **)&jarg5; - result = (int32_t)tiledb_vfs_ls(arg1,arg2,(char const *)arg3,arg4,arg5); + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_from_index(arg1,arg2,arg3,arg4,arg5); jresult = (jint)result; - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT void JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1fh_1free(JNIEnv *jenv, jclass jcls, jlong jarg1) { - tiledb_vfs_fh_t **arg1 = (tiledb_vfs_fh_t **) 0 ; +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jstring jarg4, jlong jarg5) { + jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + char *arg4 = (char *) 0 ; + void *arg5 = (void *) 0 ; + int32_t result; (void)jenv; (void)jcls; - arg1 = *(tiledb_vfs_fh_t ***)&jarg1; - tiledb_vfs_fh_free(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = 0; + if (jarg4) { + arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0); + if (!arg4) return 0; + } + arg5 = *(void **)&jarg5; + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_from_name(arg1,arg2,arg3,(char const *)arg4,arg5); + jresult = (jint)result; + if (arg4) jenv->ReleaseStringUTFChars(jarg4, (const char *)arg4); + return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1fh_1is_1closed(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1var_1size_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_vfs_fh_t *arg2 = (tiledb_vfs_fh_t *) 0 ; - int32_t *arg3 = (int32_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint32_t arg4 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg6 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_vfs_fh_t **)&jarg2; - arg3 = *(int32_t **)&jarg3; - result = (int32_t)tiledb_vfs_fh_is_closed(arg1,arg2,arg3); + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = (uint32_t)jarg4; + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint64_t **)&jarg6; + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_var_size_from_index(arg1,arg2,arg3,arg4,arg5,arg6); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1vfs_1touch(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jstring jarg3) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1var_1size_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jstring jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - tiledb_vfs_t *arg2 = (tiledb_vfs_t *) 0 ; - char *arg3 = (char *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + char *arg4 = (char *) 0 ; + uint64_t *arg5 = (uint64_t *) 0 ; + uint64_t *arg6 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = *(tiledb_vfs_t **)&jarg2; - arg3 = 0; - if (jarg3) { - arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); - if (!arg3) return 0; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = 0; + if (jarg4) { + arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0); + if (!arg4) return 0; } - result = (int32_t)tiledb_vfs_touch(arg1,arg2,(char const *)arg3); + arg5 = *(uint64_t **)&jarg5; + arg6 = *(uint64_t **)&jarg6; + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_var_size_from_name(arg1,arg2,arg3,(char const *)arg4,arg5,arg6); jresult = (jint)result; - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); + if (arg4) jenv->ReleaseStringUTFChars(jarg4, (const char *)arg4); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1uri_1to_1path(JNIEnv *jenv, jclass jcls, jlong jarg1, jstring jarg2, jstring jarg3, jlong jarg4) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1var_1from_1index(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; - char *arg2 = (char *) 0 ; - char *arg3 = (char *) 0 ; - uint32_t *arg4 = (uint32_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint32_t arg4 ; + void *arg5 = (void *) 0 ; + void *arg6 = (void *) 0 ; int32_t result; (void)jenv; (void)jcls; arg1 = *(tiledb_ctx_t **)&jarg1; - arg2 = 0; - if (jarg2) { - arg2 = (char *)jenv->GetStringUTFChars(jarg2, 0); - if (!arg2) return 0; - } - arg3 = 0; - if (jarg3) { - arg3 = (char *)jenv->GetStringUTFChars(jarg3, 0); - if (!arg3) return 0; - } - arg4 = *(uint32_t **)&jarg4; - result = (int32_t)tiledb_uri_to_path(arg1,(char const *)arg2,arg3,arg4); + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = (uint32_t)jarg4; + arg5 = *(void **)&jarg5; + arg6 = *(void **)&jarg6; + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_var_from_index(arg1,arg2,arg3,arg4,arg5,arg6); jresult = (jint)result; - if (arg2) jenv->ReleaseStringUTFChars(jarg2, (const char *)arg2); - if (arg3) jenv->ReleaseStringUTFChars(jarg3, (const char *)arg3); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1enable(JNIEnv *jenv, jclass jcls) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1non_1empty_1domain_1var_1from_1name(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jstring jarg4, jlong jarg5, jlong jarg6) { jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + char *arg4 = (char *) 0 ; + void *arg5 = (void *) 0 ; + void *arg6 = (void *) 0 ; int32_t result; (void)jenv; (void)jcls; - result = (int32_t)tiledb_stats_enable(); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = 0; + if (jarg4) { + arg4 = (char *)jenv->GetStringUTFChars(jarg4, 0); + if (!arg4) return 0; + } + arg5 = *(void **)&jarg5; + arg6 = *(void **)&jarg6; + result = (int32_t)tiledb_fragment_info_get_non_empty_domain_var_from_name(arg1,arg2,arg3,(char const *)arg4,arg5,arg6); jresult = (jint)result; + if (arg4) jenv->ReleaseStringUTFChars(jarg4, (const char *)arg4); return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1disable(JNIEnv *jenv, jclass jcls) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1cell_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint64_t *arg4 = (uint64_t *) 0 ; int32_t result; (void)jenv; (void)jcls; - result = (int32_t)tiledb_stats_disable(); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(uint64_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_get_cell_num(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1reset(JNIEnv *jenv, jclass jcls) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1version(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + uint32_t *arg4 = (uint32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; - result = (int32_t)tiledb_stats_reset(); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(uint32_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_get_version(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1dump(JNIEnv *jenv, jclass jcls, jlong jarg1) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1has_1consolidated_1metadata(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; - FILE *arg1 = (FILE *) 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + int32_t *arg4 = (int32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; - arg1 = *(FILE **)&jarg1; - result = (int32_t)tiledb_stats_dump(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(int32_t **)&jarg4; + result = (int32_t)tiledb_fragment_info_has_consolidated_metadata(arg1,arg2,arg3,arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1dump_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1unconsolidated_1metadata_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; - char **arg1 = (char **) 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t *arg3 = (uint32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; - arg1 = *(char ***)&jarg1; - result = (int32_t)tiledb_stats_dump_str(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = *(uint32_t **)&jarg3; + result = (int32_t)tiledb_fragment_info_get_unconsolidated_metadata_num(arg1,arg2,arg3); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1raw_1dump(JNIEnv *jenv, jclass jcls, jlong jarg1) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1to_1vacuum_1num(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; - FILE *arg1 = (FILE *) 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t *arg3 = (uint32_t *) 0 ; int32_t result; (void)jenv; (void)jcls; - arg1 = *(FILE **)&jarg1; - result = (int32_t)tiledb_stats_raw_dump(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = *(uint32_t **)&jarg3; + result = (int32_t)tiledb_fragment_info_get_to_vacuum_num(arg1,arg2,arg3); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1raw_1dump_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1get_1to_1vacuum_1uri(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3, jlong jarg4) { jint jresult = 0 ; - char **arg1 = (char **) 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + uint32_t arg3 ; + char **arg4 = (char **) 0 ; int32_t result; (void)jenv; (void)jcls; - arg1 = *(char ***)&jarg1; - result = (int32_t)tiledb_stats_raw_dump_str(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = (uint32_t)jarg3; + arg4 = *(char ***)&jarg4; + result = (int32_t)tiledb_fragment_info_get_to_vacuum_uri(arg1,arg2,arg3,(char const **)arg4); jresult = (jint)result; return jresult; } -SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1stats_1free_1str(JNIEnv *jenv, jclass jcls, jlong jarg1) { +SWIGEXPORT jint JNICALL Java_io_tiledb_libtiledb_tiledbJNI_tiledb_1fragment_1info_1dump(JNIEnv *jenv, jclass jcls, jlong jarg1, jlong jarg2, jlong jarg3) { jint jresult = 0 ; - char **arg1 = (char **) 0 ; + tiledb_ctx_t *arg1 = (tiledb_ctx_t *) 0 ; + tiledb_fragment_info_t *arg2 = (tiledb_fragment_info_t *) 0 ; + FILE *arg3 = (FILE *) 0 ; int32_t result; (void)jenv; (void)jcls; - arg1 = *(char ***)&jarg1; - result = (int32_t)tiledb_stats_free_str(arg1); + arg1 = *(tiledb_ctx_t **)&jarg1; + arg2 = *(tiledb_fragment_info_t **)&jarg2; + arg3 = *(FILE **)&jarg3; + result = (int32_t)tiledb_fragment_info_dump(arg1,(tiledb_fragment_info_t const *)arg2,arg3); jresult = (jint)result; return jresult; } diff --git a/src/main/java/io/tiledb/java/api/Array.java b/src/main/java/io/tiledb/java/api/Array.java index d01ad660..c54e3ca6 100644 --- a/src/main/java/io/tiledb/java/api/Array.java +++ b/src/main/java/io/tiledb/java/api/Array.java @@ -996,6 +996,20 @@ public ArraySchema getSchema() throws TileDBError { return _schema; } + /** + * Reopens a TileDB array (the array must be already open). This is useful when the array got + * updated after it got opened. To sync-up with the updates, the user must either close the array + * and open with `tiledb_array_open`, or just use `reopen` without closing. This function will be + * generally faster than the former alternative. + * + *

Note: reopening encrypted arrays does not require the encryption key. + * + * @throws TileDBError + */ + public void reopen() throws TileDBError { + ctx.handleError(tiledb.tiledb_array_reopen(ctx.getCtxp(), getArrayp())); + } + /** @return The TileDB QueryType enum value that the Array instance. */ public QueryType getQueryType() { return query_type; diff --git a/src/main/java/io/tiledb/java/api/Attribute.java b/src/main/java/io/tiledb/java/api/Attribute.java index 8823c4d2..b2924bdc 100644 --- a/src/main/java/io/tiledb/java/api/Attribute.java +++ b/src/main/java/io/tiledb/java/api/Attribute.java @@ -290,6 +290,84 @@ public Pair getFillValue() throws TileDBError { } } + /** + * Sets the default fill value for the input, nullable attribute. This value will be used for the + * input attribute whenever querying (1) an empty cell in a dense array, or (2) a non-empty cell + * (in either dense or sparse array) when values on the input attribute are missing (e.g., if the + * user writes a subset of the attributes in a write operation). + * + * @param value The fill value to set. + * @param size The fill value size in bytes. + * @param valid The validity fill value, zero for a null value and non-zero for a valid attribute. + * @throws TileDBError + */ + public void setFillValueNullable(NativeArray value, BigInteger size, boolean valid) + throws TileDBError { + + try { + ctx.handleError( + tiledb.tiledb_attribute_set_fill_value_nullable( + ctx.getCtxp(), + attributep, + value.toVoidPointer(), + size, + valid ? (short) 1 : (short) 0)); + } catch (TileDBError err) { + throw err; + } + } + + /** + * Gets the default fill value for the input, nullable attribute. This value will be used for the + * input attribute whenever querying (1) an empty cell in a dense array, or (2) a non-empty cell + * (in either dense or sparse array) when values on the input attribute are missing (e.g., if the + * user writes a subset of the attributes in a write operation). + * + *

Applicable to both fixed-sized and var-sized attributes. + * + * @return A pair which contains the fill value and a pair with its size and validity field i.e. + * Pair(5, Pair(4, true)) + * @throws TileDBError + */ + public Pair> getFillValueNullable() throws TileDBError { + + try (NativeArray value = new NativeArray(ctx, this.type.getNativeSize(), this.type)) { + NativeArray validArr = new NativeArray(ctx, 1, Datatype.TILEDB_UINT8); + SWIGTYPE_p_unsigned_long_long size = tiledb.new_ullp(); + SWIGTYPE_p_p_void v = tiledb.new_voidpArray(1); + SWIGTYPE_p_unsigned_char valid = validArr.getUint8_tArray().cast(); + + ctx.handleError( + tiledb.tiledb_attribute_get_fill_value_nullable( + ctx.getCtxp(), attributep, v, size, valid)); + + Object fillValue; + try (NativeArray fillValueArray = new NativeArray(ctx, getType(), v, 1)) { + fillValue = fillValueArray.getItem(0); + } + + boolean validBoolean = validArr.getUint8_tArray().getitem(0) == 0 ? false : true; + + return new Pair(fillValue, new Pair(tiledb.ullp_value(size), validBoolean)); + } catch (TileDBError err) { + throw err; + } + } + + public int setNullable(boolean isNullable) throws TileDBError { + + short nullable = isNullable ? (short) 1 : (short) 0; + + try { + int res; + ctx.handleError( + res = tiledb.tiledb_attribute_set_nullable(ctx.getCtxp(), this.attributep, nullable)); + return res; + } catch (TileDBError err) { + throw err; + } + } + /** @return A String representation for the Attribute. */ @Override public String toString() { diff --git a/src/main/java/io/tiledb/java/api/NativeArray.java b/src/main/java/io/tiledb/java/api/NativeArray.java index 6d5ec9d2..93092743 100644 --- a/src/main/java/io/tiledb/java/api/NativeArray.java +++ b/src/main/java/io/tiledb/java/api/NativeArray.java @@ -1043,4 +1043,44 @@ public void close() { uint64_tArray.delete(); } } + + public io.tiledb.libtiledb.floatArray getFloatArray() { + return floatArray; + } + + public io.tiledb.libtiledb.doubleArray getDoubleArray() { + return doubleArray; + } + + public io.tiledb.libtiledb.int8_tArray getInt8_tArray() { + return int8_tArray; + } + + public io.tiledb.libtiledb.int16_tArray getInt16_tArray() { + return int16_tArray; + } + + public io.tiledb.libtiledb.int32_tArray getInt32_tArray() { + return int32_tArray; + } + + public io.tiledb.libtiledb.int64_tArray getInt64_tArray() { + return int64_tArray; + } + + public io.tiledb.libtiledb.uint8_tArray getUint8_tArray() { + return uint8_tArray; + } + + public io.tiledb.libtiledb.uint16_tArray getUint16_tArray() { + return uint16_tArray; + } + + public io.tiledb.libtiledb.uint32_tArray getUint32_tArray() { + return uint32_tArray; + } + + public io.tiledb.libtiledb.int64_tArray getUint64_tArray() { + return uint64_tArray; + } } diff --git a/src/main/java/io/tiledb/java/api/Query.java b/src/main/java/io/tiledb/java/api/Query.java index 23cffdee..06b31069 100644 --- a/src/main/java/io/tiledb/java/api/Query.java +++ b/src/main/java/io/tiledb/java/api/Query.java @@ -61,6 +61,8 @@ public class Query implements AutoCloseable { private Map> byteBuffers_; private Map> buffers_; private Map> buffer_sizes_; + private Map validityByteMaps_; + private Map validityByteMapsByteBuffers_; public Query(Array array, QueryType type) throws TileDBError { Context _ctx = array.getCtx(); @@ -81,6 +83,8 @@ public Query(Array array, QueryType type) throws TileDBError { this.buffers_ = Collections.synchronizedMap(new HashMap<>()); this.byteBuffers_ = Collections.synchronizedMap(new HashMap<>()); this.buffer_sizes_ = Collections.synchronizedMap(new HashMap<>()); + this.validityByteMaps_ = Collections.synchronizedMap(new HashMap<>()); + this.validityByteMapsByteBuffers_ = Collections.synchronizedMap(new HashMap<>()); } public Query(Array array) throws TileDBError { @@ -196,7 +200,7 @@ public synchronized Query setSubarray(NativeArray subarray) throws TileDBError { * @exception TileDBError A TileDB exception */ public synchronized Query setSubarray(ByteBuffer subarray) throws TileDBError { - ctx.handleError(tiledb.tiledb_query_set_subarray_nio(ctx.getCtxp(), queryp, subarray)); + ctx.handleError(Utils.tiledb_query_set_subarray_nio(ctx.getCtxp(), queryp, subarray)); return this; } @@ -529,6 +533,281 @@ public synchronized Query setBuffer(String attr, NativeArray buffer, long buffer return this; } + /** + * Sets a nullable buffer for a fixed-sized attribute. + * + * @param attr The attribute name. + * @param buffer NativeBuffer to be used for the attribute values. + * @param bufferElements The actual number of buffer elements + * @param bytemap The byte-map + * @exception TileDBError A TileDB exception + */ + public synchronized Query setBufferNullable( + String attr, NativeArray buffer, long bufferElements, NativeArray bytemap) + throws TileDBError { + if (bufferElements <= 0) { + throw new TileDBError("Number of buffer elements must be >= 1"); + } + if (bufferElements > buffer.getSize()) { + throw new TileDBError( + "Number of elements requested exceeds the number of elements in allocated buffer: " + + bufferElements + + " > " + + buffer.getSize()); + } + + try (ArraySchema schema = array.getSchema()) { + try (Domain domain = schema.getDomain()) { + if (attr.equals(tiledb.tiledb_coords())) { + Types.typeCheck(domain.getDimension(attr).getType(), buffer.getNativeType()); + } else if (domain.hasDimension(attr)) { + Types.typeCheck(domain.getDimension(attr).getType(), buffer.getNativeType()); + } else { + try (Attribute attribute = schema.getAttribute(attr)) { + Types.typeCheck(attribute.getType(), buffer.getNativeType()); + } + } + } + } + + uint64_tArray offsets_array_size = new uint64_tArray(1); + uint64_tArray values_array_size = new uint64_tArray(1); + uint64_tArray buffer_validity_bytemap_size = new uint64_tArray(1); + offsets_array_size.setitem(0, BigInteger.valueOf(0l)); + values_array_size.setitem(0, BigInteger.valueOf(bufferElements * buffer.getNativeTypeSize())); + buffer_validity_bytemap_size.setitem( + 0, BigInteger.valueOf(bytemap.getSize() * bytemap.getNativeTypeSize())); + + Pair buffer_sizes = + new Pair<>(offsets_array_size, values_array_size); + + // Close previous buffers if they exist for this attribute + if (buffers_.containsKey(attr)) { + buffers_.get(attr).getSecond().close(); + } + + buffers_.put(attr, new Pair(null, buffer)); + buffer_sizes_.put(attr, buffer_sizes); + validityByteMaps_.put(attr, bytemap); + + // Set the actual TileDB buffer + uint64_tArray buffer_size = buffer_sizes.getSecond(); + + ctx.handleError( + tiledb.tiledb_query_set_buffer_nullable( + ctx.getCtxp(), + queryp, + attr, + buffer.toVoidPointer(), + buffer_size.cast(), + bytemap.getUint8_tArray().cast(), + buffer_validity_bytemap_size.cast())); + + return this; + } + + /** + * Sets a nullable buffer for a fixed-sized, nullable attribute. + * + * @param attr The attribute name. + * @param buffer NativeBuffer to be used for the attribute values. + * @param bytemap The byte-map + * @exception TileDBError A TileDB exception + */ + public synchronized Query setBufferNullableNIO(String attr, ByteBuffer buffer, ByteBuffer bytemap) + throws TileDBError { + + if (buffer.capacity() <= 0) { + throw new TileDBError("Number of buffer elements must be >= 1"); + } + + if (!buffer.isDirect()) { + throw new TileDBError( + "The ByteBuffer provided is not direct. Please provide a direct buffer (ByteBuffer.allocateDirect(...))"); + } + + if (!buffer.order().equals(ByteOrder.nativeOrder())) { + throw new TileDBError( + "The order of the data ByteBuffer should be the same as the native order (ByteOrder.nativeOrder())."); + } + + this.byteBuffers_.put(attr, new Pair<>(null, buffer)); + + uint64_tArray offsets_array_size = new uint64_tArray(1); + uint64_tArray values_array_size = new uint64_tArray(1); + uint64_tArray buffer_validity_bytemap_size = new uint64_tArray(1); + + offsets_array_size.setitem(0, BigInteger.valueOf(0)); + values_array_size.setitem(0, BigInteger.valueOf(buffer.capacity())); + buffer_validity_bytemap_size.setitem(0, BigInteger.valueOf(bytemap.capacity())); + + buffer_sizes_.put(attr, new Pair<>(offsets_array_size, values_array_size)); + + Pair buffer_sizes = + new Pair<>(offsets_array_size, values_array_size); + + this.byteBuffers_.put(attr, new Pair<>(null, buffer)); + + buffer_sizes_.put(attr, buffer_sizes); + validityByteMapsByteBuffers_.put(attr, bytemap); + + // Set the actual TileDB buffer + uint64_tArray buffer_size = buffer_sizes.getSecond(); + + ctx.handleError( + Utils.tiledb_query_set_buffer_nullable_nio( + ctx.getCtxp(), + queryp, + attr, + buffer, + buffer_size.cast(), + bytemap, + buffer_validity_bytemap_size.cast())); + + return this; + } + + /** + * Sets a nullable buffer for a variable-sized getAttribute. + * + * @param attr Attribute name + * @param offsets Offsets where a new element begins in the data buffer. + * @param buffer Buffer vector with elements of the attribute type. + * @param bytemap The byte-map + * @exception TileDBError A TileDB exception + */ + public synchronized Query setBufferNullable( + String attr, NativeArray offsets, NativeArray buffer, NativeArray bytemap) + throws TileDBError { + + if (attr.equals(tiledb.tiledb_coords())) { + throw new TileDBError("Cannot set coordinate buffer as variable sized."); + } + + if (!offsets.getNativeType().equals(TILEDB_UINT64)) { + throw new TileDBError( + "Buffer offsets should be of getType TILEDB_UINT64 or Long. Found getType: " + + offsets.getNativeType()); + } + + // Type check the buffer native type matches the schema attribute type + try (ArraySchema schema = array.getSchema()) { + try (Domain domain = schema.getDomain()) { + if (attr.equals(tiledb.tiledb_coords())) { + Types.typeCheck(domain.getDimension(attr).getType(), buffer.getNativeType()); + } else if (domain.hasDimension(attr)) { + Types.typeCheck(domain.getDimension(attr).getType(), buffer.getNativeType()); + } else { + try (Attribute attribute = schema.getAttribute(attr)) { + Types.typeCheck(attribute.getType(), buffer.getNativeType()); + } + } + } + } + + uint64_tArray offsets_array = PointerUtils.uint64_tArrayFromVoid(offsets.toVoidPointer()); + uint64_tArray offsets_array_size = new uint64_tArray(1); + uint64_tArray values_array_size = new uint64_tArray(1); + uint64_tArray buffer_validity_bytemap_size = new uint64_tArray(1); + + offsets_array_size.setitem(0, BigInteger.valueOf(offsets.getNBytes())); + values_array_size.setitem(0, BigInteger.valueOf(buffer.getNBytes())); + buffer_validity_bytemap_size.setitem( + 0, BigInteger.valueOf(bytemap.getSize() * bytemap.getNativeTypeSize())); + + Pair buffer_sizes = + new Pair<>(offsets_array_size, values_array_size); + + // Close previous buffers if they exist for this attribute + if (buffers_.containsKey(attr)) { + Pair prev_buffers = buffers_.get(attr); + prev_buffers.getFirst().close(); + prev_buffers.getSecond().close(); + } + + buffers_.put(attr, new Pair<>(offsets, buffer)); + buffer_sizes_.put(attr, buffer_sizes); + validityByteMaps_.put(attr, bytemap); + + ctx.handleError( + tiledb.tiledb_query_set_buffer_var_nullable( + ctx.getCtxp(), + queryp, + attr, + offsets_array.cast(), + offsets_array_size.cast(), + buffer.toVoidPointer(), + values_array_size.cast(), + bytemap.getUint8_tArray().cast(), + buffer_validity_bytemap_size.cast())); + + return this; + } + + /** + * Sets a ByteBuffer buffer for a variable-sized, nullable attribute. + * + * @param attr Attribute name + * @param offsets Offsets where a new element begins in the data buffer. + * @param buffer Buffer vector with elements of the attribute type. + * @exception TileDBError A TileDB exception + */ + public synchronized Query setBufferNullableNIO( + String attr, ByteBuffer offsets, ByteBuffer buffer, ByteBuffer bytemap) throws TileDBError { + + if (attr.equals(tiledb.tiledb_coords())) { + throw new TileDBError("Cannot set coordinate buffer as variable sized."); + } + + if (!offsets.order().equals(ByteOrder.nativeOrder()) && offsets.position() > 0) { + throw new TileDBError( + "The order of the offsets ByteBuffer should be the same as the native order (ByteOrder.nativeOrder()) before values are inserted."); + } + + if (!buffer.order().equals(ByteOrder.nativeOrder()) && buffer.position() > 0) { + throw new TileDBError( + "The order of the data ByteBuffer should be the same as the native order (ByteOrder.nativeOrder()) before values are inserted."); + } + + offsets.order(ByteOrder.nativeOrder()); + buffer.order(ByteOrder.nativeOrder()); + + uint64_tArray offsets_array_size = new uint64_tArray(0); + uint64_tArray values_array_size = new uint64_tArray(0); + uint64_tArray buffer_validity_bytemap_size = new uint64_tArray(0); + + offsets_array_size.setitem(0, BigInteger.valueOf(offsets.capacity())); + values_array_size.setitem(0, BigInteger.valueOf(buffer.capacity())); + buffer_validity_bytemap_size.setitem(0, BigInteger.valueOf(bytemap.capacity())); + + Pair buffer_sizes = + new Pair<>(offsets_array_size, values_array_size); + + // Close previous buffers if they exist for this attribute + if (buffers_.containsKey(attr)) { + Pair prev_buffers = buffers_.get(attr); + prev_buffers.getFirst().close(); + prev_buffers.getSecond().close(); + } + + buffer_sizes_.put(attr, buffer_sizes); + this.byteBuffers_.put(attr, new Pair(offsets, buffer)); + + ctx.handleError( + Utils.tiledb_query_set_buffer_var_nullable_nio( + ctx.getCtxp(), + queryp, + attr, + offsets, + offsets_array_size.cast(), + buffer, + values_array_size.cast(), + bytemap, + buffer_validity_bytemap_size.cast())); + + return this; + } + /** * * Sets a NIO ByteBuffer * @@ -547,7 +826,6 @@ public synchronized Query setBuffer(String attr, long bufferElements) throws Til int size = Util.castLongToInt(bufferElements * dt.getNativeSize()); ByteBuffer buffer = ByteBuffer.allocateDirect(size).order(ByteOrder.nativeOrder()); - ; this.setBuffer(attr, buffer); @@ -588,7 +866,7 @@ public synchronized Query setBuffer(String attr, ByteBuffer buffer) throws TileD buffer_sizes_.put(attr, new Pair<>(offsets_array_size, values_array_size)); ctx.handleError( - tiledb.tiledb_query_set_buffer_nio( + Utils.tiledb_query_set_buffer_nio( ctx.getCtxp(), queryp, attr, buffer, values_array_size.cast())); return this; @@ -711,7 +989,7 @@ public synchronized Query setBuffer(String attr, ByteBuffer offsets, ByteBuffer this.byteBuffers_.put(attr, new Pair(offsets, buffer)); ctx.handleError( - tiledb.tiledb_query_set_buffer_var_nio( + Utils.tiledb_query_set_buffer_var_nio( ctx.getCtxp(), queryp, attr, @@ -1294,6 +1572,15 @@ public long[] getOffsetArray(String bufferName) throws TileDBError { throw new TileDBError("ByteBuffer does not exist for attribute: " + bufferName); } + /** @param attribute */ + Object getValidityByteMap(String attribute) throws TileDBError { + if (this.validityByteMaps_.containsKey(attribute)) { + return this.validityByteMaps_.get(attribute).toJavaArray(); + } + + throw new TileDBError("Attribute " + attribute + " is not nullable"); + } + /** * Returns the result size estimate for each attribute/dimension * @@ -1341,6 +1628,42 @@ public Query finalizeQuery() throws TileDBError { return this; } + /** + * Retrieves the number of written fragments. Applicable only to WRITE queries. + * + * @return The number of written fragments + * @throws TileDBError + */ + public long getFragmentNum() throws TileDBError { + SWIGTYPE_p_unsigned_int fragmentNum = tiledb.new_uintp(); + ctx.handleError(tiledb.tiledb_query_get_fragment_num(ctx.getCtxp(), queryp, fragmentNum)); + + return tiledb.uintp_value(fragmentNum); + } + + /** + * Retrieves the URI of the written fragment with the input index. Applicable only to WRITE + * queries. + * + * @return The URI + * @throws TileDBError + */ + public String getFragmentURI(BigInteger idx) throws TileDBError { + SWIGTYPE_p_p_char uri = tiledb.new_charpp(); + ctx.handleError(tiledb.tiledb_query_get_fragment_uri(ctx.getCtxp(), queryp, idx, uri)); + + return tiledb.charpp_value(uri); + } + + public Pair getFragmentTimestampRange(BigInteger idx) throws TileDBError { + SWIGTYPE_p_unsigned_long_long t1 = tiledb.new_ullp(); + SWIGTYPE_p_unsigned_long_long t2 = tiledb.new_ullp(); + ctx.handleError( + tiledb.tiledb_query_get_fragment_timestamp_range(ctx.getCtxp(), queryp, idx, t1, t2)); + + return new Pair(tiledb.ullp_value(t1), tiledb.ullp_value(t2)); + } + // Default noop async completion callback private static class DefaultCallback implements Callback { public DefaultCallback() {} diff --git a/src/main/java/io/tiledb/libtiledb/NativeLibLoader.java b/src/main/java/io/tiledb/libtiledb/NativeLibLoader.java index 9b9bdaa0..c3ea5413 100644 --- a/src/main/java/io/tiledb/libtiledb/NativeLibLoader.java +++ b/src/main/java/io/tiledb/libtiledb/NativeLibLoader.java @@ -317,7 +317,7 @@ private static Path extractLibraryFile( */ private static Path findNativeLibrary(String libraryName, boolean mapLibraryName) { String mappedLibraryName = mapLibraryName ? System.mapLibraryName(libraryName) : libraryName; - String libDir = LIB_RESOURCE_DIR; + String libDir = LIB_RESOURCE_DIR + "/" + getOSClassifier(); String libPath = libDir + "/" + mappedLibraryName; boolean hasNativeLib = hasResource(libPath); diff --git a/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_tiledb_fragment_info_t.java b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_tiledb_fragment_info_t.java new file mode 100644 index 00000000..d20a8f68 --- /dev/null +++ b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_tiledb_fragment_info_t.java @@ -0,0 +1,26 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.1 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +package io.tiledb.libtiledb; + +public class SWIGTYPE_p_p_tiledb_fragment_info_t { + private transient long swigCPtr; + + protected SWIGTYPE_p_p_tiledb_fragment_info_t( + long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_p_tiledb_fragment_info_t() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_p_tiledb_fragment_info_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} diff --git a/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_unsigned_char.java b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_unsigned_char.java new file mode 100644 index 00000000..23c3672a --- /dev/null +++ b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_p_unsigned_char.java @@ -0,0 +1,25 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.1 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +package io.tiledb.libtiledb; + +public class SWIGTYPE_p_p_unsigned_char { + private transient long swigCPtr; + + protected SWIGTYPE_p_p_unsigned_char(long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_p_unsigned_char() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_p_unsigned_char obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} diff --git a/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_tiledb_fragment_info_t.java b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_tiledb_fragment_info_t.java new file mode 100644 index 00000000..f22f44c0 --- /dev/null +++ b/src/main/java/io/tiledb/libtiledb/SWIGTYPE_p_tiledb_fragment_info_t.java @@ -0,0 +1,26 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 4.0.1 + * + * Do not make changes to this file unless you know what you are doing--modify + * the SWIG interface file instead. + * ----------------------------------------------------------------------------- */ + +package io.tiledb.libtiledb; + +public class SWIGTYPE_p_tiledb_fragment_info_t { + private transient long swigCPtr; + + protected SWIGTYPE_p_tiledb_fragment_info_t( + long cPtr, @SuppressWarnings("unused") boolean futureUse) { + swigCPtr = cPtr; + } + + protected SWIGTYPE_p_tiledb_fragment_info_t() { + swigCPtr = 0; + } + + protected static long getCPtr(SWIGTYPE_p_tiledb_fragment_info_t obj) { + return (obj == null) ? 0 : obj.swigCPtr; + } +} diff --git a/src/main/java/io/tiledb/libtiledb/Utils.java b/src/main/java/io/tiledb/libtiledb/Utils.java index a6101a6a..a5bad870 100644 --- a/src/main/java/io/tiledb/libtiledb/Utils.java +++ b/src/main/java/io/tiledb/libtiledb/Utils.java @@ -1,5 +1,7 @@ package io.tiledb.libtiledb; +import java.nio.ByteBuffer; + public class Utils { public static int32_tArray newInt32_tArray(int[] array) { @@ -180,6 +182,84 @@ public static int tiledb_query_submit_async( callback); } + public static int tiledb_query_set_subarray_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, ByteBuffer subarray) { + return tiledbJNI.tiledb_query_set_subarray_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), SWIGTYPE_p_tiledb_query_t.getCPtr(query), subarray); + } + + public static int tiledb_query_set_buffer_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size) { + return tiledbJNI.tiledb_query_set_buffer_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size)); + } + + public static int tiledb_query_set_buffer_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size, + ByteBuffer validity_bytemap, + SWIGTYPE_p_unsigned_long_long validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size), + validity_bytemap, + SWIGTYPE_p_unsigned_long_long.getCPtr(validity_bytemap_size)); + } + + public static int tiledb_query_set_buffer_var_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer_off, + SWIGTYPE_p_unsigned_long_long buffer_off_size, + ByteBuffer buffer_val, + SWIGTYPE_p_unsigned_long_long buffer_val_size) { + return tiledbJNI.tiledb_query_set_buffer_var_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer_off, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_off_size), + buffer_val, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_val_size)); + } + + public static int tiledb_query_set_buffer_var_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer offsets, + SWIGTYPE_p_unsigned_long_long offsets_size, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size, + ByteBuffer validity_bytemap, + SWIGTYPE_p_unsigned_long_long validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_var_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + offsets, + SWIGTYPE_p_unsigned_long_long.getCPtr(offsets_size), + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size), + validity_bytemap, + SWIGTYPE_p_unsigned_long_long.getCPtr(validity_bytemap_size)); + } + public static int tiledb_object_ls( SWIGTYPE_p_tiledb_ctx_t ctx, String path, PathCallback callback) { return tiledbJNI.tiledb_object_ls_java( diff --git a/src/main/java/io/tiledb/libtiledb/tiledb.java b/src/main/java/io/tiledb/libtiledb/tiledb.java index e41f5d6d..faa1de76 100644 --- a/src/main/java/io/tiledb/libtiledb/tiledb.java +++ b/src/main/java/io/tiledb/libtiledb/tiledb.java @@ -8,8 +8,6 @@ package io.tiledb.libtiledb; -import java.nio.ByteBuffer; - public class tiledb implements tiledbConstants { public static SWIGTYPE_p_p_char new_charpArray(int nelements) { long cPtr = tiledbJNI.new_charpArray(nelements); @@ -1356,6 +1354,16 @@ public static int tiledb_config_save_to_file( SWIGTYPE_p_p_tiledb_error_t.getCPtr(error)); } + public static int tiledb_config_compare( + SWIGTYPE_p_tiledb_config_t lhs, + SWIGTYPE_p_tiledb_config_t rhs, + SWIGTYPE_p_unsigned_char equal) { + return tiledbJNI.tiledb_config_compare( + SWIGTYPE_p_tiledb_config_t.getCPtr(lhs), + SWIGTYPE_p_tiledb_config_t.getCPtr(rhs), + SWIGTYPE_p_unsigned_char.getCPtr(equal)); + } + public static int tiledb_config_iter_alloc( SWIGTYPE_p_tiledb_config_t config, String prefix, @@ -1578,6 +1586,14 @@ public static void tiledb_attribute_free(SWIGTYPE_p_p_tiledb_attribute_t attr) { tiledbJNI.tiledb_attribute_free(SWIGTYPE_p_p_tiledb_attribute_t.getCPtr(attr)); } + public static int tiledb_attribute_set_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_attribute_t attr, short nullable) { + return tiledbJNI.tiledb_attribute_set_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_attribute_t.getCPtr(attr), + nullable); + } + public static int tiledb_attribute_set_filter_list( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_attribute_t attr, @@ -1614,6 +1630,16 @@ public static int tiledb_attribute_get_type( SWIGTYPE_p_tiledb_datatype_t.getCPtr(type)); } + public static int tiledb_attribute_get_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_attribute_t attr, + SWIGTYPE_p_unsigned_char nullable) { + return tiledbJNI.tiledb_attribute_get_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_attribute_t.getCPtr(attr), + SWIGTYPE_p_unsigned_char.getCPtr(nullable)); + } + public static int tiledb_attribute_get_filter_list( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_attribute_t attr, @@ -1676,6 +1702,34 @@ public static int tiledb_attribute_get_fill_value( SWIGTYPE_p_unsigned_long_long.getCPtr(size)); } + public static int tiledb_attribute_set_fill_value_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_attribute_t attr, + SWIGTYPE_p_void value, + java.math.BigInteger size, + short validity) { + return tiledbJNI.tiledb_attribute_set_fill_value_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_attribute_t.getCPtr(attr), + SWIGTYPE_p_void.getCPtr(value), + size, + validity); + } + + public static int tiledb_attribute_get_fill_value_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_attribute_t attr, + SWIGTYPE_p_p_void value, + SWIGTYPE_p_unsigned_long_long size, + SWIGTYPE_p_unsigned_char valid) { + return tiledbJNI.tiledb_attribute_get_fill_value_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_attribute_t.getCPtr(attr), + SWIGTYPE_p_p_void.getCPtr(value), + SWIGTYPE_p_unsigned_long_long.getCPtr(size), + SWIGTYPE_p_unsigned_char.getCPtr(valid)); + } + public static int tiledb_domain_alloc( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_p_tiledb_domain_t domain) { return tiledbJNI.tiledb_domain_alloc( @@ -2135,6 +2189,16 @@ public static int tiledb_query_alloc( SWIGTYPE_p_p_tiledb_query_t.getCPtr(query)); } + public static int tiledb_query_set_config( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + SWIGTYPE_p_tiledb_config_t config) { + return tiledbJNI.tiledb_query_set_config( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + SWIGTYPE_p_tiledb_config_t.getCPtr(config)); + } + public static int tiledb_query_set_subarray( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, SWIGTYPE_p_void subarray) { return tiledbJNI.tiledb_query_set_subarray( @@ -2143,12 +2207,6 @@ public static int tiledb_query_set_subarray( SWIGTYPE_p_void.getCPtr(subarray)); } - public static int tiledb_query_set_subarray_nio( - SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, ByteBuffer subarray) { - return tiledbJNI.tiledb_query_set_subarray_nio( - SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), SWIGTYPE_p_tiledb_query_t.getCPtr(query), subarray); - } - public static int tiledb_query_set_buffer( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2163,20 +2221,6 @@ public static int tiledb_query_set_buffer( SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size)); } - public static int tiledb_query_set_buffer_nio( - SWIGTYPE_p_tiledb_ctx_t ctx, - SWIGTYPE_p_tiledb_query_t query, - String name, - ByteBuffer buffer, - SWIGTYPE_p_unsigned_long_long buffer_size) { - return tiledbJNI.tiledb_query_set_buffer_nio( - SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), - SWIGTYPE_p_tiledb_query_t.getCPtr(query), - name, - buffer, - SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size)); - } - public static int tiledb_query_set_buffer_var( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2195,22 +2239,44 @@ public static int tiledb_query_set_buffer_var( SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_val_size)); } - public static int tiledb_query_set_buffer_var_nio( + public static int tiledb_query_set_buffer_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + SWIGTYPE_p_void buffer, + SWIGTYPE_p_unsigned_long_long buffer_size, + SWIGTYPE_p_unsigned_char buffer_validity_bytemap, + SWIGTYPE_p_unsigned_long_long buffer_validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + SWIGTYPE_p_void.getCPtr(buffer), + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size), + SWIGTYPE_p_unsigned_char.getCPtr(buffer_validity_bytemap), + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_validity_bytemap_size)); + } + + public static int tiledb_query_set_buffer_var_nullable( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, String name, - ByteBuffer buffer_off, + SWIGTYPE_p_unsigned_long_long buffer_off, SWIGTYPE_p_unsigned_long_long buffer_off_size, - ByteBuffer buffer_val, - SWIGTYPE_p_unsigned_long_long buffer_val_size) { - return tiledbJNI.tiledb_query_set_buffer_var_nio( + SWIGTYPE_p_void buffer_val, + SWIGTYPE_p_unsigned_long_long buffer_val_size, + SWIGTYPE_p_unsigned_char buffer_validity_bytemap, + SWIGTYPE_p_unsigned_long_long buffer_validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_var_nullable( SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), SWIGTYPE_p_tiledb_query_t.getCPtr(query), name, - buffer_off, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_off), SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_off_size), - buffer_val, - SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_val_size)); + SWIGTYPE_p_void.getCPtr(buffer_val), + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_val_size), + SWIGTYPE_p_unsigned_char.getCPtr(buffer_validity_bytemap), + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_validity_bytemap_size)); } public static int tiledb_query_get_buffer( @@ -2245,6 +2311,46 @@ public static int tiledb_query_get_buffer_var( SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_val_size)); } + public static int tiledb_query_get_buffer_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + SWIGTYPE_p_p_void buffer, + SWIGTYPE_p_p_unsigned_long_long buffer_size, + SWIGTYPE_p_p_unsigned_char buffer_validity_bytemap, + SWIGTYPE_p_p_unsigned_long_long buffer_validity_bytemap_size) { + return tiledbJNI.tiledb_query_get_buffer_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + SWIGTYPE_p_p_void.getCPtr(buffer), + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_size), + SWIGTYPE_p_p_unsigned_char.getCPtr(buffer_validity_bytemap), + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_validity_bytemap_size)); + } + + public static int tiledb_query_get_buffer_var_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + SWIGTYPE_p_p_unsigned_long_long buffer_off, + SWIGTYPE_p_p_unsigned_long_long buffer_off_size, + SWIGTYPE_p_p_void buffer_val, + SWIGTYPE_p_p_unsigned_long_long buffer_val_size, + SWIGTYPE_p_p_unsigned_char buffer_validity_bytemap, + SWIGTYPE_p_p_unsigned_long_long buffer_validity_bytemap_size) { + return tiledbJNI.tiledb_query_get_buffer_var_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_off), + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_off_size), + SWIGTYPE_p_p_void.getCPtr(buffer_val), + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_val_size), + SWIGTYPE_p_p_unsigned_char.getCPtr(buffer_validity_bytemap), + SWIGTYPE_p_p_unsigned_long_long.getCPtr(buffer_validity_bytemap_size)); + } + public static int tiledb_query_set_layout( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, tiledb_layout_t layout) { return tiledbJNI.tiledb_query_set_layout( @@ -2345,6 +2451,22 @@ public static int tiledb_query_add_range( SWIGTYPE_p_void.getCPtr(stride)); } + public static int tiledb_query_add_range_by_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + SWIGTYPE_p_void start, + SWIGTYPE_p_void end, + SWIGTYPE_p_void stride) { + return tiledbJNI.tiledb_query_add_range_by_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + SWIGTYPE_p_void.getCPtr(start), + SWIGTYPE_p_void.getCPtr(end), + SWIGTYPE_p_void.getCPtr(stride)); + } + public static int tiledb_query_add_range_var( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2363,6 +2485,24 @@ public static int tiledb_query_add_range_var( end_size); } + public static int tiledb_query_add_range_var_by_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + SWIGTYPE_p_void start, + java.math.BigInteger start_size, + SWIGTYPE_p_void end, + java.math.BigInteger end_size) { + return tiledbJNI.tiledb_query_add_range_var_by_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + SWIGTYPE_p_void.getCPtr(start), + start_size, + SWIGTYPE_p_void.getCPtr(end), + end_size); + } + public static int tiledb_query_get_range_num( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2375,6 +2515,18 @@ public static int tiledb_query_get_range_num( SWIGTYPE_p_unsigned_long_long.getCPtr(range_num)); } + public static int tiledb_query_get_range_num_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + SWIGTYPE_p_unsigned_long_long range_num) { + return tiledbJNI.tiledb_query_get_range_num_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + SWIGTYPE_p_unsigned_long_long.getCPtr(range_num)); + } + public static int tiledb_query_get_range( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2393,6 +2545,24 @@ public static int tiledb_query_get_range( SWIGTYPE_p_p_void.getCPtr(stride)); } + public static int tiledb_query_get_range_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + java.math.BigInteger range_idx, + SWIGTYPE_p_p_void start, + SWIGTYPE_p_p_void end, + SWIGTYPE_p_p_void stride) { + return tiledbJNI.tiledb_query_get_range_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + range_idx, + SWIGTYPE_p_p_void.getCPtr(start), + SWIGTYPE_p_p_void.getCPtr(end), + SWIGTYPE_p_p_void.getCPtr(stride)); + } + public static int tiledb_query_get_range_var_size( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2409,6 +2579,22 @@ public static int tiledb_query_get_range_var_size( SWIGTYPE_p_unsigned_long_long.getCPtr(end_size)); } + public static int tiledb_query_get_range_var_size_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + java.math.BigInteger range_idx, + SWIGTYPE_p_unsigned_long_long start_size, + SWIGTYPE_p_unsigned_long_long end_size) { + return tiledbJNI.tiledb_query_get_range_var_size_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + range_idx, + SWIGTYPE_p_unsigned_long_long.getCPtr(start_size), + SWIGTYPE_p_unsigned_long_long.getCPtr(end_size)); + } + public static int tiledb_query_get_range_var( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2425,6 +2611,22 @@ public static int tiledb_query_get_range_var( SWIGTYPE_p_void.getCPtr(end)); } + public static int tiledb_query_get_range_var_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String dim_name, + java.math.BigInteger range_idx, + SWIGTYPE_p_void start, + SWIGTYPE_p_void end) { + return tiledbJNI.tiledb_query_get_range_var_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + dim_name, + range_idx, + SWIGTYPE_p_void.getCPtr(start), + SWIGTYPE_p_void.getCPtr(end)); + } + public static int tiledb_query_get_est_result_size( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, @@ -2451,6 +2653,36 @@ public static int tiledb_query_get_est_result_size_var( SWIGTYPE_p_unsigned_long_long.getCPtr(size_val)); } + public static int tiledb_query_get_est_result_size_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + SWIGTYPE_p_unsigned_long_long size_val, + SWIGTYPE_p_unsigned_long_long size_validity) { + return tiledbJNI.tiledb_query_get_est_result_size_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + SWIGTYPE_p_unsigned_long_long.getCPtr(size_val), + SWIGTYPE_p_unsigned_long_long.getCPtr(size_validity)); + } + + public static int tiledb_query_get_est_result_size_var_nullable( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + SWIGTYPE_p_unsigned_long_long size_off, + SWIGTYPE_p_unsigned_long_long size_val, + SWIGTYPE_p_unsigned_long_long size_validity) { + return tiledbJNI.tiledb_query_get_est_result_size_var_nullable( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + SWIGTYPE_p_unsigned_long_long.getCPtr(size_off), + SWIGTYPE_p_unsigned_long_long.getCPtr(size_val), + SWIGTYPE_p_unsigned_long_long.getCPtr(size_validity)); + } + public static int tiledb_query_get_fragment_num( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, SWIGTYPE_p_unsigned_int num) { return tiledbJNI.tiledb_query_get_fragment_num( @@ -3124,6 +3356,15 @@ public static int tiledb_vfs_copy_file( new_uri); } + public static int tiledb_vfs_copy_dir( + SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_vfs_t vfs, String old_uri, String new_uri) { + return tiledbJNI.tiledb_vfs_copy_dir( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_vfs_t.getCPtr(vfs), + old_uri, + new_uri); + } + public static int tiledb_vfs_open( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_vfs_t vfs, @@ -3250,6 +3491,283 @@ public static int tiledb_stats_free_str(SWIGTYPE_p_p_char out) { return tiledbJNI.tiledb_stats_free_str(SWIGTYPE_p_p_char.getCPtr(out)); } + public static int tiledb_fragment_info_alloc( + SWIGTYPE_p_tiledb_ctx_t ctx, + String array_uri, + SWIGTYPE_p_p_tiledb_fragment_info_t fragment_info) { + return tiledbJNI.tiledb_fragment_info_alloc( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + array_uri, + SWIGTYPE_p_p_tiledb_fragment_info_t.getCPtr(fragment_info)); + } + + public static void tiledb_fragment_info_free(SWIGTYPE_p_p_tiledb_fragment_info_t fragment_info) { + tiledbJNI.tiledb_fragment_info_free(SWIGTYPE_p_p_tiledb_fragment_info_t.getCPtr(fragment_info)); + } + + public static int tiledb_fragment_info_load( + SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_fragment_info_t fragment_info) { + return tiledbJNI.tiledb_fragment_info_load( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info)); + } + + public static int tiledb_fragment_info_load_with_key( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + tiledb_encryption_type_t encryption_type, + SWIGTYPE_p_void encryption_key, + long key_length) { + return tiledbJNI.tiledb_fragment_info_load_with_key( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + encryption_type.swigValue(), + SWIGTYPE_p_void.getCPtr(encryption_key), + key_length); + } + + public static int tiledb_fragment_info_get_fragment_num( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + SWIGTYPE_p_unsigned_int fragment_num) { + return tiledbJNI.tiledb_fragment_info_get_fragment_num( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + SWIGTYPE_p_unsigned_int.getCPtr(fragment_num)); + } + + public static int tiledb_fragment_info_get_fragment_uri( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_p_char uri) { + return tiledbJNI.tiledb_fragment_info_get_fragment_uri( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_p_char.getCPtr(uri)); + } + + public static int tiledb_fragment_info_get_fragment_size( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_unsigned_long_long size) { + return tiledbJNI.tiledb_fragment_info_get_fragment_size( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_unsigned_long_long.getCPtr(size)); + } + + public static int tiledb_fragment_info_get_dense( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_int dense) { + return tiledbJNI.tiledb_fragment_info_get_dense( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_int.getCPtr(dense)); + } + + public static int tiledb_fragment_info_get_sparse( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_int sparse) { + return tiledbJNI.tiledb_fragment_info_get_sparse( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_int.getCPtr(sparse)); + } + + public static int tiledb_fragment_info_get_timestamp_range( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_unsigned_long_long start, + SWIGTYPE_p_unsigned_long_long end) { + return tiledbJNI.tiledb_fragment_info_get_timestamp_range( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_unsigned_long_long.getCPtr(start), + SWIGTYPE_p_unsigned_long_long.getCPtr(end)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_from_index( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + long did, + SWIGTYPE_p_void domain) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_from_index( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + did, + SWIGTYPE_p_void.getCPtr(domain)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + String dim_name, + SWIGTYPE_p_void domain) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + dim_name, + SWIGTYPE_p_void.getCPtr(domain)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_var_size_from_index( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + long did, + SWIGTYPE_p_unsigned_long_long start_size, + SWIGTYPE_p_unsigned_long_long end_size) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_var_size_from_index( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + did, + SWIGTYPE_p_unsigned_long_long.getCPtr(start_size), + SWIGTYPE_p_unsigned_long_long.getCPtr(end_size)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_var_size_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + String dim_name, + SWIGTYPE_p_unsigned_long_long start_size, + SWIGTYPE_p_unsigned_long_long end_size) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_var_size_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + dim_name, + SWIGTYPE_p_unsigned_long_long.getCPtr(start_size), + SWIGTYPE_p_unsigned_long_long.getCPtr(end_size)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_var_from_index( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + long did, + SWIGTYPE_p_void start, + SWIGTYPE_p_void end) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_var_from_index( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + did, + SWIGTYPE_p_void.getCPtr(start), + SWIGTYPE_p_void.getCPtr(end)); + } + + public static int tiledb_fragment_info_get_non_empty_domain_var_from_name( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + String dim_name, + SWIGTYPE_p_void start, + SWIGTYPE_p_void end) { + return tiledbJNI.tiledb_fragment_info_get_non_empty_domain_var_from_name( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + dim_name, + SWIGTYPE_p_void.getCPtr(start), + SWIGTYPE_p_void.getCPtr(end)); + } + + public static int tiledb_fragment_info_get_cell_num( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_unsigned_long_long cell_num) { + return tiledbJNI.tiledb_fragment_info_get_cell_num( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_unsigned_long_long.getCPtr(cell_num)); + } + + public static int tiledb_fragment_info_get_version( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_unsigned_int version) { + return tiledbJNI.tiledb_fragment_info_get_version( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_unsigned_int.getCPtr(version)); + } + + public static int tiledb_fragment_info_has_consolidated_metadata( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_int has) { + return tiledbJNI.tiledb_fragment_info_has_consolidated_metadata( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_int.getCPtr(has)); + } + + public static int tiledb_fragment_info_get_unconsolidated_metadata_num( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + SWIGTYPE_p_unsigned_int unconsolidated) { + return tiledbJNI.tiledb_fragment_info_get_unconsolidated_metadata_num( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + SWIGTYPE_p_unsigned_int.getCPtr(unconsolidated)); + } + + public static int tiledb_fragment_info_get_to_vacuum_num( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + SWIGTYPE_p_unsigned_int to_vacuum_num) { + return tiledbJNI.tiledb_fragment_info_get_to_vacuum_num( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + SWIGTYPE_p_unsigned_int.getCPtr(to_vacuum_num)); + } + + public static int tiledb_fragment_info_get_to_vacuum_uri( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + long fid, + SWIGTYPE_p_p_char uri) { + return tiledbJNI.tiledb_fragment_info_get_to_vacuum_uri( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + fid, + SWIGTYPE_p_p_char.getCPtr(uri)); + } + + public static int tiledb_fragment_info_dump( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_fragment_info_t fragment_info, + SWIGTYPE_p_FILE out) { + return tiledbJNI.tiledb_fragment_info_dump( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_fragment_info_t.getCPtr(fragment_info), + SWIGTYPE_p_FILE.getCPtr(out)); + } + public static int tiledb_dimension_dump_stdout( SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_dimension_t dim) { return tiledbJNI.tiledb_dimension_dump_stdout( diff --git a/src/main/java/io/tiledb/libtiledb/tiledbConstants.java b/src/main/java/io/tiledb/libtiledb/tiledbConstants.java index 415427fa..11b22c87 100644 --- a/src/main/java/io/tiledb/libtiledb/tiledbConstants.java +++ b/src/main/java/io/tiledb/libtiledb/tiledbConstants.java @@ -13,6 +13,6 @@ public interface tiledbConstants { public static final int TILEDB_OK = 0; public static final int TILEDB_OOM = (-2); public static final int TILEDB_VERSION_MAJOR = 2; - public static final int TILEDB_VERSION_MINOR = 1; + public static final int TILEDB_VERSION_MINOR = 2; public static final int TILEDB_VERSION_PATCH = 2; } diff --git a/src/main/java/io/tiledb/libtiledb/tiledbJNI.java b/src/main/java/io/tiledb/libtiledb/tiledbJNI.java index 2a764c68..f6934f32 100644 --- a/src/main/java/io/tiledb/libtiledb/tiledbJNI.java +++ b/src/main/java/io/tiledb/libtiledb/tiledbJNI.java @@ -24,6 +24,41 @@ public class tiledbJNI { } } + public static final native int tiledb_query_set_subarray_nio( + long jarg1, long jarg2, ByteBuffer jarg3); + + public static final native int tiledb_query_set_buffer_nio( + long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5); + + public static final native int tiledb_query_set_buffer_var_nio( + long jarg1, + long jarg2, + String jarg3, + ByteBuffer jarg4, + long jarg5, + ByteBuffer jarg6, + long jarg7); + + public static final native int tiledb_query_set_buffer_nullable_nio( + long jarg1, + long jarg2, + String jarg3, + ByteBuffer jarg4, + long jarg5, + ByteBuffer jarg6, + long jarg7); + + public static final native int tiledb_query_set_buffer_var_nullable_nio( + long jarg1, + long jarg2, + String jarg3, + ByteBuffer jarg4, + long jarg5, + ByteBuffer jarg6, + long jarg7, + ByteBuffer jarg8, + long jarg9); + public static final native int tiledb_query_submit_async_java( long jarg1, SWIGTYPE_p_tiledb_ctx_t jarg1_, @@ -709,6 +744,8 @@ public static final native int tiledb_config_get( public static final native int tiledb_config_save_to_file(long jarg1, String jarg2, long jarg3); + public static final native int tiledb_config_compare(long jarg1, long jarg2, long jarg3); + public static final native int tiledb_config_iter_alloc( long jarg1, String jarg2, long jarg3, long jarg4); @@ -775,6 +812,8 @@ public static final native int tiledb_attribute_alloc( public static final native void tiledb_attribute_free(long jarg1); + public static final native int tiledb_attribute_set_nullable(long jarg1, long jarg2, short jarg3); + public static final native int tiledb_attribute_set_filter_list( long jarg1, long jarg2, long jarg3); @@ -785,6 +824,8 @@ public static final native int tiledb_attribute_set_cell_val_num( public static final native int tiledb_attribute_get_type(long jarg1, long jarg2, long jarg3); + public static final native int tiledb_attribute_get_nullable(long jarg1, long jarg2, long jarg3); + public static final native int tiledb_attribute_get_filter_list( long jarg1, long jarg2, long jarg3); @@ -801,6 +842,12 @@ public static final native int tiledb_attribute_set_fill_value( public static final native int tiledb_attribute_get_fill_value( long jarg1, long jarg2, long jarg3, long jarg4); + public static final native int tiledb_attribute_set_fill_value_nullable( + long jarg1, long jarg2, long jarg3, java.math.BigInteger jarg4, short jarg5); + + public static final native int tiledb_attribute_get_fill_value_nullable( + long jarg1, long jarg2, long jarg3, long jarg4, long jarg5); + public static final native int tiledb_domain_alloc(long jarg1, long jarg2); public static final native void tiledb_domain_free(long jarg1); @@ -923,28 +970,29 @@ public static final native int tiledb_array_schema_has_attribute( public static final native int tiledb_query_alloc(long jarg1, long jarg2, int jarg3, long jarg4); - public static final native int tiledb_query_set_subarray(long jarg1, long jarg2, long jarg3); + public static final native int tiledb_query_set_config(long jarg1, long jarg2, long jarg3); - public static final native int tiledb_query_set_subarray_nio( - long jarg1, long jarg2, ByteBuffer jarg3); + public static final native int tiledb_query_set_subarray(long jarg1, long jarg2, long jarg3); public static final native int tiledb_query_set_buffer( long jarg1, long jarg2, String jarg3, long jarg4, long jarg5); - public static final native int tiledb_query_set_buffer_nio( - long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5); - public static final native int tiledb_query_set_buffer_var( long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6, long jarg7); - public static final native int tiledb_query_set_buffer_var_nio( + public static final native int tiledb_query_set_buffer_nullable( + long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6, long jarg7); + + public static final native int tiledb_query_set_buffer_var_nullable( long jarg1, long jarg2, String jarg3, - ByteBuffer jarg4, + long jarg4, long jarg5, - ByteBuffer jarg6, - long jarg7); + long jarg6, + long jarg7, + long jarg8, + long jarg9); public static final native int tiledb_query_get_buffer( long jarg1, long jarg2, String jarg3, long jarg4, long jarg5); @@ -952,6 +1000,20 @@ public static final native int tiledb_query_get_buffer( public static final native int tiledb_query_get_buffer_var( long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6, long jarg7); + public static final native int tiledb_query_get_buffer_nullable( + long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6, long jarg7); + + public static final native int tiledb_query_get_buffer_var_nullable( + long jarg1, + long jarg2, + String jarg3, + long jarg4, + long jarg5, + long jarg6, + long jarg7, + long jarg8, + long jarg9); + public static final native int tiledb_query_set_layout(long jarg1, long jarg2, int jarg3); public static final native int tiledb_query_finalize(long jarg1, long jarg2); @@ -976,6 +1038,9 @@ public static final native int tiledb_query_submit_async( public static final native int tiledb_query_add_range( long jarg1, long jarg2, long jarg3, long jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_add_range_by_name( + long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_add_range_var( long jarg1, long jarg2, @@ -985,9 +1050,21 @@ public static final native int tiledb_query_add_range_var( long jarg6, java.math.BigInteger jarg7); + public static final native int tiledb_query_add_range_var_by_name( + long jarg1, + long jarg2, + String jarg3, + long jarg4, + java.math.BigInteger jarg5, + long jarg6, + java.math.BigInteger jarg7); + public static final native int tiledb_query_get_range_num( long jarg1, long jarg2, long jarg3, long jarg4); + public static final native int tiledb_query_get_range_num_from_name( + long jarg1, long jarg2, String jarg3, long jarg4); + public static final native int tiledb_query_get_range( long jarg1, long jarg2, @@ -997,18 +1074,39 @@ public static final native int tiledb_query_get_range( long jarg6, long jarg7); + public static final native int tiledb_query_get_range_from_name( + long jarg1, + long jarg2, + String jarg3, + java.math.BigInteger jarg4, + long jarg5, + long jarg6, + long jarg7); + public static final native int tiledb_query_get_range_var_size( long jarg1, long jarg2, long jarg3, java.math.BigInteger jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_get_range_var_size_from_name( + long jarg1, long jarg2, String jarg3, java.math.BigInteger jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_get_range_var( long jarg1, long jarg2, long jarg3, java.math.BigInteger jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_get_range_var_from_name( + long jarg1, long jarg2, String jarg3, java.math.BigInteger jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_get_est_result_size( long jarg1, long jarg2, String jarg3, long jarg4); public static final native int tiledb_query_get_est_result_size_var( long jarg1, long jarg2, String jarg3, long jarg4, long jarg5); + public static final native int tiledb_query_get_est_result_size_nullable( + long jarg1, long jarg2, String jarg3, long jarg4, long jarg5); + + public static final native int tiledb_query_get_est_result_size_var_nullable( + long jarg1, long jarg2, String jarg3, long jarg4, long jarg5, long jarg6); + public static final native int tiledb_query_get_fragment_num(long jarg1, long jarg2, long jarg3); public static final native int tiledb_query_get_fragment_uri( @@ -1181,6 +1279,9 @@ public static final native int tiledb_vfs_move_dir( public static final native int tiledb_vfs_copy_file( long jarg1, long jarg2, String jarg3, String jarg4); + public static final native int tiledb_vfs_copy_dir( + long jarg1, long jarg2, String jarg3, String jarg4); + public static final native int tiledb_vfs_open( long jarg1, long jarg2, String jarg3, int jarg4, long jarg5); @@ -1222,6 +1323,71 @@ public static final native int tiledb_uri_to_path( public static final native int tiledb_stats_free_str(long jarg1); + public static final native int tiledb_fragment_info_alloc(long jarg1, String jarg2, long jarg3); + + public static final native void tiledb_fragment_info_free(long jarg1); + + public static final native int tiledb_fragment_info_load(long jarg1, long jarg2); + + public static final native int tiledb_fragment_info_load_with_key( + long jarg1, long jarg2, int jarg3, long jarg4, long jarg5); + + public static final native int tiledb_fragment_info_get_fragment_num( + long jarg1, long jarg2, long jarg3); + + public static final native int tiledb_fragment_info_get_fragment_uri( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_fragment_size( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_dense( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_sparse( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_timestamp_range( + long jarg1, long jarg2, long jarg3, long jarg4, long jarg5); + + public static final native int tiledb_fragment_info_get_non_empty_domain_from_index( + long jarg1, long jarg2, long jarg3, long jarg4, long jarg5); + + public static final native int tiledb_fragment_info_get_non_empty_domain_from_name( + long jarg1, long jarg2, long jarg3, String jarg4, long jarg5); + + public static final native int tiledb_fragment_info_get_non_empty_domain_var_size_from_index( + long jarg1, long jarg2, long jarg3, long jarg4, long jarg5, long jarg6); + + public static final native int tiledb_fragment_info_get_non_empty_domain_var_size_from_name( + long jarg1, long jarg2, long jarg3, String jarg4, long jarg5, long jarg6); + + public static final native int tiledb_fragment_info_get_non_empty_domain_var_from_index( + long jarg1, long jarg2, long jarg3, long jarg4, long jarg5, long jarg6); + + public static final native int tiledb_fragment_info_get_non_empty_domain_var_from_name( + long jarg1, long jarg2, long jarg3, String jarg4, long jarg5, long jarg6); + + public static final native int tiledb_fragment_info_get_cell_num( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_version( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_has_consolidated_metadata( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_get_unconsolidated_metadata_num( + long jarg1, long jarg2, long jarg3); + + public static final native int tiledb_fragment_info_get_to_vacuum_num( + long jarg1, long jarg2, long jarg3); + + public static final native int tiledb_fragment_info_get_to_vacuum_uri( + long jarg1, long jarg2, long jarg3, long jarg4); + + public static final native int tiledb_fragment_info_dump(long jarg1, long jarg2, long jarg3); + public static final native int tiledb_dimension_dump_stdout(long jarg1, long jarg2); public static final native int tiledb_attribute_dump_stdout(long jarg1, long jarg2); diff --git a/src/main/java/io/tiledb/libtiledb/tiledb_filesystem_t.java b/src/main/java/io/tiledb/libtiledb/tiledb_filesystem_t.java index 44ae0076..3ca2cc1c 100644 --- a/src/main/java/io/tiledb/libtiledb/tiledb_filesystem_t.java +++ b/src/main/java/io/tiledb/libtiledb/tiledb_filesystem_t.java @@ -12,7 +12,8 @@ public enum tiledb_filesystem_t { TILEDB_HDFS(0), TILEDB_S3(1), TILEDB_AZURE(2), - TILEDB_GCS(3); + TILEDB_GCS(3), + TILEDB_MEMFS(4); public final int swigValue() { return swigValue; diff --git a/src/main/java/io/tiledb/libtiledb/tiledb_layout_t.java b/src/main/java/io/tiledb/libtiledb/tiledb_layout_t.java index 9cabbc04..36517d33 100644 --- a/src/main/java/io/tiledb/libtiledb/tiledb_layout_t.java +++ b/src/main/java/io/tiledb/libtiledb/tiledb_layout_t.java @@ -12,7 +12,8 @@ public enum tiledb_layout_t { TILEDB_ROW_MAJOR(0), TILEDB_COL_MAJOR(1), TILEDB_GLOBAL_ORDER(2), - TILEDB_UNORDERED(3); + TILEDB_UNORDERED(3), + TILEDB_HILBERT(4); public final int swigValue() { return swigValue; diff --git a/src/test/java/io/tiledb/java/api/ArrayTest.java b/src/test/java/io/tiledb/java/api/ArrayTest.java index 66235b56..ec5531e5 100644 --- a/src/test/java/io/tiledb/java/api/ArrayTest.java +++ b/src/test/java/io/tiledb/java/api/ArrayTest.java @@ -752,4 +752,13 @@ public void testArrayPutMetadataOverload() throws Exception { array.close(); } + + @Test + public void testArrayReopen() throws Exception { + Array.create(arrayURI, schemaCreate()); + + try (Array array = new Array(ctx, arrayURI)) { + array.reopen(); + } + } } diff --git a/src/test/java/io/tiledb/java/api/AttributeTest.java b/src/test/java/io/tiledb/java/api/AttributeTest.java index 088cc547..48aacce5 100644 --- a/src/test/java/io/tiledb/java/api/AttributeTest.java +++ b/src/test/java/io/tiledb/java/api/AttributeTest.java @@ -108,4 +108,75 @@ public void testAttributeSetFillValue() throws Exception { a.getFillValue().getSecond()); } } + + @Test + public void testAttributeSetFillValueNullable() throws Exception { + try (Context ctx = new Context(); + Attribute a = new Attribute(ctx, "a2", Datatype.TILEDB_INT32)) { + + a.setNullable(true); + + NativeArray arr = new NativeArray(ctx, 1, Datatype.TILEDB_INT32); + + arr.setItem(0, 5); + + a.setFillValueNullable( + arr, BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), true); + + Assert.assertEquals(5, a.getFillValueNullable().getFirst()); + Assert.assertEquals( + BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), + a.getFillValueNullable().getSecond().getFirst()); + + Assert.assertEquals(true, a.getFillValueNullable().getSecond().getSecond()); + } + + try (Context ctx = new Context(); + Attribute a = new Attribute(ctx, "a2", Datatype.TILEDB_INT64)) { + + a.setNullable(true); + + NativeArray arr = new NativeArray(ctx, 1, Datatype.TILEDB_INT64); + + arr.setItem(0, 5L); + + a.setFillValueNullable( + arr, BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), false); + + Assert.assertEquals(5L, a.getFillValueNullable().getFirst()); + Assert.assertEquals( + BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), + a.getFillValueNullable().getSecond().getFirst()); + + Assert.assertEquals(false, a.getFillValueNullable().getSecond().getSecond()); + } + + try (Context ctx = new Context(); + Attribute a = new Attribute(ctx, "a2", Datatype.TILEDB_CHAR)) { + + a.setNullable(true); + + NativeArray arr = new NativeArray(ctx, 1, Datatype.TILEDB_CHAR); + + arr.setItem(0, "c"); + + a.setFillValueNullable( + arr, BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), false); + + Assert.assertEquals((byte) 'c', a.getFillValueNullable().getFirst()); + Assert.assertEquals( + BigInteger.valueOf(arr.getNativeTypeSize() * arr.getSize()), + a.getFillValueNullable().getSecond().getFirst()); + + Assert.assertEquals(false, a.getFillValueNullable().getSecond().getSecond()); + } + } + + @Test + public void testAttributeSetNullable() throws Exception { + try (Context ctx = new Context(); + Attribute a = new Attribute(ctx, "a2", Datatype.TILEDB_FLOAT32)) { + a.setNullable(false); + } + } } diff --git a/src/test/java/io/tiledb/java/api/QueryTest.java b/src/test/java/io/tiledb/java/api/QueryTest.java index 3bc31a2b..0583933d 100644 --- a/src/test/java/io/tiledb/java/api/QueryTest.java +++ b/src/test/java/io/tiledb/java/api/QueryTest.java @@ -11,6 +11,7 @@ import java.math.BigInteger; import java.nio.*; import java.nio.charset.StandardCharsets; +import java.util.Arrays; import java.util.HashMap; import org.junit.Assert; import org.junit.Before; @@ -89,6 +90,15 @@ public void arrayWrite() throws Exception { query.setBuffer("a2", a2); // Submit query query.submit(); + + // Get the number of written fragments + long num = query.getFragmentNum(); + + // Get the fragment URI by index (0 <= idx < num) + String uri = query.getFragmentURI(BigInteger.ZERO); + + // Get the timestamp range by index (0 <= idx < num) + Pair range = query.getFragmentTimestampRange(BigInteger.ZERO); } } @@ -937,4 +947,362 @@ public void testGetRangeVarSize() throws TileDBError { } } } + + public static class NullableAttributesDenseTest { + + @Rule public TemporaryFolder temp = new TemporaryFolder(); + + private String arrayURI; + + @Before + public void setup() throws Exception { + ctx = new Context(); + arrayURI = temp.getRoot().toPath().resolve("query").toString(); + } + + public void denseArrayCreateNullableAttrs(boolean nullable) throws Exception { + // The array will be 4x4 with dimensions "rows" and "cols", with domain [1,4]. + Dimension rows = + new Dimension<>(ctx, "rows", Integer.class, new Pair(1, 2), 2); + Dimension cols = + new Dimension<>(ctx, "cols", Integer.class, new Pair(1, 2), 2); + + // Create and set getDomain + Domain domain = new Domain(ctx); + domain.addDimension(rows); + domain.addDimension(cols); + + // Add two attributes "a1" and "a2", so each (i,j) cell can store + // a character on "a1" and a vector of two floats on "a2". + Attribute a1 = new Attribute(ctx, "a1", Character.class); + Attribute a2 = new Attribute(ctx, "a2", Float.class); + a2.setCellValNum(1); + + if (nullable) { + a1.setNullable(true); + a2.setNullable(true); + } + + ArraySchema schema = new ArraySchema(ctx, TILEDB_DENSE); + schema.setTileOrder(TILEDB_ROW_MAJOR); + schema.setCellOrder(TILEDB_ROW_MAJOR); + schema.setDomain(domain); + schema.addAttribute(a1); + schema.addAttribute(a2); + + Array.create(arrayURI, schema); + } + + public void denseArrayWrite() throws Exception { + // Prepare cell buffers + NativeArray a1 = new NativeArray(ctx, "abcd", String.class); + NativeArray a2 = new NativeArray(ctx, new float[] {0.1f, 0.2f, 1.1f, 1.2f}, Float.class); + + // Create query + try (Array array = new Array(ctx, arrayURI, TILEDB_WRITE); + Query query = new Query(array)) { + query.setLayout(TILEDB_ROW_MAJOR); + NativeArray a1Bytemap = + new NativeArray(ctx, new short[] {1, 0, 0, 1}, Datatype.TILEDB_UINT8); + NativeArray a2Bytemap = + new NativeArray(ctx, new short[] {1, 1, 1, 0}, Datatype.TILEDB_UINT8); + + query.setBufferNullable("a1", a1, 4, a1Bytemap); + query.setBufferNullable("a2", a2, 4, a2Bytemap); + + // Submit query + query.submit(); + } + } + + public void sparseArrayCreateNullableAttrs(boolean nullable) throws TileDBError { + // The array will be 4x4 with dimensions "rows" and "cols", with domain [1,4]. + Dimension d1 = + new Dimension(ctx, "d1", Datatype.TILEDB_STRING_ASCII, null, null); + + // Create and set getDomain + Domain domain = new Domain(ctx); + domain.addDimension(d1); + + // Add two attributes "a1" and "a2", so each (i,j) cell can store + // a character on "a1" and a vector of two floats on "a2". + Attribute a1 = new Attribute(ctx, "a1", Integer.class); + Attribute a2 = new Attribute(ctx, "a2", Datatype.TILEDB_STRING_ASCII); + a2.setCellVar(); + + if (nullable) { + a1.setNullable(true); + a2.setNullable(true); + } + + ArraySchema schema = new ArraySchema(ctx, TILEDB_SPARSE); + schema.setTileOrder(TILEDB_ROW_MAJOR); + schema.setCellOrder(TILEDB_ROW_MAJOR); + schema.setDomain(domain); + schema.addAttribute(a1); + schema.addAttribute(a2); + + Array.create(arrayURI, schema); + } + + public void sparseArrayWrite() throws TileDBError { + + NativeArray d_data = new NativeArray(ctx, "aabbccddee", Datatype.TILEDB_STRING_ASCII); + NativeArray d_off = new NativeArray(ctx, new long[] {0, 2, 4, 6, 8}, Datatype.TILEDB_UINT64); + + // Prepare cell buffers + NativeArray a1 = new NativeArray(ctx, new int[] {1, 2, 3, 4, 5}, Integer.class); + + NativeArray a2_data = new NativeArray(ctx, "aabbccddee", Datatype.TILEDB_STRING_ASCII); + NativeArray a2_off = new NativeArray(ctx, new long[] {0, 2, 4, 6, 8}, Datatype.TILEDB_UINT64); + + // Create query + Array array = new Array(ctx, arrayURI, TILEDB_WRITE); + Query query = new Query(array); + query.setLayout(TILEDB_GLOBAL_ORDER); + + NativeArray a1ByteMap = + new NativeArray(ctx, new short[] {0, 0, 0, 1, 1}, Datatype.TILEDB_UINT8); + NativeArray a2ByteMap = + new NativeArray(ctx, new short[] {1, 1, 1, 0, 0}, Datatype.TILEDB_UINT8); + + query.setBuffer("d1", d_off, d_data); + query.setBufferNullable("a1", a1, 5, a1ByteMap); + query.setBufferNullable("a2", a2_off, a2_data, a2ByteMap); + + // Submit query + query.submit(); + + query.finalizeQuery(); + query.close(); + array.close(); + } + + @Test + public void testDense() throws Exception { + denseArrayCreateNullableAttrs(true); + denseArrayWrite(); + } + + @Test(expected = TileDBError.class) + public void testDenseErrorExpeted() throws Exception { + denseArrayCreateNullableAttrs(false); + denseArrayWrite(); + } + + @Test + public void denseArrayReadTest() throws Exception { + denseArrayCreateNullableAttrs(true); + denseArrayWrite(); + + // Create array and query + try (Array array = new Array(ctx, arrayURI, TILEDB_READ); + Query query = new Query(array, TILEDB_READ)) { + + // Fetch all cells + query.addRange(0, 1, 2); + query.addRange(1, 1, 2); + query.setLayout(TILEDB_ROW_MAJOR); + + NativeArray dim1Array = new NativeArray(ctx, 4, Integer.class); + NativeArray dim2Array = new NativeArray(ctx, 4, Integer.class); + NativeArray a1Array = new NativeArray(ctx, 4, Character.class); + NativeArray a1byteMap = new NativeArray(ctx, 4, Datatype.TILEDB_UINT8); + NativeArray a2Array = new NativeArray(ctx, 4, Float.class); + NativeArray a2byteMap = new NativeArray(ctx, 4, Datatype.TILEDB_UINT8); + + query.setBuffer("rows", dim1Array); + query.setBuffer("cols", dim2Array); + query.setBufferNullable("a1", a1Array, 4, a1byteMap); + query.setBufferNullable("a2", a2Array, 4, a2byteMap); + + // Submit query + query.submit(); + + HashMap> resultElements = query.resultBufferElements(); + + Assert.assertEquals(Long.valueOf(4), resultElements.get("a1").getSecond()); + Assert.assertEquals(Long.valueOf(4), resultElements.get("a2").getSecond()); + + int[] dim1 = (int[]) query.getBuffer("rows"); + int[] dim2 = (int[]) query.getBuffer("cols"); + byte[] a1 = (byte[]) query.getBuffer("a1"); + float[] a2 = (float[]) query.getBuffer("a2"); + + short[] a1ValidityByteMap = (short[]) query.getValidityByteMap("a1"); + short[] a2ValidityByteMap = (short[]) query.getValidityByteMap("a2"); + + Assert.assertArrayEquals(new int[] {1, 1, 2, 2}, dim1); + Assert.assertArrayEquals(new int[] {1, 2, 1, 2}, dim2); + Assert.assertArrayEquals(new byte[] {'a', 'b', 'c', 'd'}, a1); + Assert.assertArrayEquals(new float[] {0.1f, 0.2f, 1.1f, 1.2f}, a2, 0.01f); + Assert.assertArrayEquals(new short[] {1, 0, 0, 1}, a1ValidityByteMap); + Assert.assertArrayEquals(new short[] {1, 1, 1, 0}, a2ValidityByteMap); + } + } + + @Test + public void denseArrayNIOReadTest() throws Exception { + denseArrayCreateNullableAttrs(true); + denseArrayWrite(); + + // Create array and query + try (Array array = new Array(ctx, arrayURI, TILEDB_READ); + Query query = new Query(array, TILEDB_READ)) { + + // Fetch all cells + query.addRange(0, 1, 2); + query.addRange(1, 1, 2); + query.setLayout(TILEDB_ROW_MAJOR); + + ByteBuffer dim1Array = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer dim2Array = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a1Array = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a1byteMap = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a2Array = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a2byteMap = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + + query.setBuffer("rows", dim1Array); + query.setBuffer("cols", dim2Array); + query.setBufferNullableNIO("a1", a1Array, a1byteMap); + query.setBufferNullableNIO("a2", a2Array, a2byteMap); + + // Submit query + query.submit(); + + int[] dim1 = new int[4]; + int[] dim2 = new int[4]; + byte[] a1 = new byte[4]; + float[] a2 = new float[4]; + + byte[] a1ValidityByteMap = new byte[4]; + byte[] a2ValidityByteMap = new byte[4]; + + int dimIdx = 0; + while (dim1Array.hasRemaining() && dim2Array.hasRemaining()) { + dim1[dimIdx] = dim1Array.getInt(); + dim2[dimIdx] = dim2Array.getInt(); + a1[dimIdx] = a1Array.get(); + a2[dimIdx] = a2Array.getFloat(); + a1ValidityByteMap[dimIdx] = a1byteMap.get(); + a2ValidityByteMap[dimIdx] = a2byteMap.get(); + dimIdx++; + } + + Assert.assertArrayEquals(new int[] {1, 1, 2, 2}, dim1); + Assert.assertArrayEquals(new int[] {1, 2, 1, 2}, dim2); + Assert.assertArrayEquals(new byte[] {'a', 'b', 'c', 'd'}, a1); + Assert.assertArrayEquals(new float[] {0.1f, 0.2f, 1.1f, 1.2f}, a2, 0.01f); + Assert.assertArrayEquals(new byte[] {1, 0, 0, 1}, a1ValidityByteMap); + Assert.assertArrayEquals(new byte[] {1, 1, 1, 0}, a2ValidityByteMap); + } + } + + @Test + public void testSparse() throws Exception { + sparseArrayCreateNullableAttrs(true); + sparseArrayWrite(); + } + + @Test(expected = TileDBError.class) + public void testSparseErrorExpected() throws Exception { + sparseArrayCreateNullableAttrs(false); + sparseArrayWrite(); + } + + @Test + public void sparseArrayReadTest() throws Exception { + sparseArrayCreateNullableAttrs(true); + sparseArrayWrite(); + + // Create array and query + try (Array array = new Array(ctx, arrayURI, TILEDB_READ); + Query query = new Query(array, TILEDB_READ)) { + + query.setLayout(TILEDB_ROW_MAJOR); + + NativeArray a1Array = new NativeArray(ctx, 5, Datatype.TILEDB_INT32); + NativeArray a1byteMap = new NativeArray(ctx, 5, Datatype.TILEDB_UINT8); + NativeArray a2Array = new NativeArray(ctx, 10, Datatype.TILEDB_STRING_ASCII); + NativeArray a2Offsets = new NativeArray(ctx, 5, Datatype.TILEDB_UINT64); + NativeArray a2byteMap = new NativeArray(ctx, 10, Datatype.TILEDB_UINT8); + + query.setBufferNullable("a1", a1Array, 5, a1byteMap); + query.setBufferNullable("a2", a2Offsets, a2Array, a2byteMap); + + // Submit query + query.submit(); + + HashMap> resultElements = query.resultBufferElements(); + + int[] a1 = (int[]) query.getBuffer("a1"); + byte[] a2 = (byte[]) query.getBuffer("a2"); + long[] a2Off = query.getVarBuffer("a2"); + + Assert.assertEquals(Long.valueOf(5), resultElements.get("a1").getSecond()); + Assert.assertEquals(Long.valueOf(10), resultElements.get("a2").getSecond()); + + short[] a1ValidityByteMap = (short[]) query.getValidityByteMap("a1"); + short[] a2ValidityByteMap = (short[]) query.getValidityByteMap("a2"); + + Assert.assertArrayEquals(new int[] {1, 2, 3, 4, 5}, a1); + Assert.assertArrayEquals( + new String[] {"aa", "bb", "cc", "dd", "ee"}, Util.bytesToStrings(a2Off, a2)); + Assert.assertArrayEquals(new short[] {0, 0, 0, 1, 1}, a1ValidityByteMap); + Assert.assertArrayEquals(new short[] {1, 1, 1, 0, 0}, Arrays.copyOf(a2ValidityByteMap, 5)); + } + } + + @Test + public void sparseArrayNIOReadTest() throws Exception { + sparseArrayCreateNullableAttrs(true); + sparseArrayWrite(); + + // Create array and query + try (Array array = new Array(ctx, arrayURI, TILEDB_READ); + Query query = new Query(array, TILEDB_READ)) { + + query.setLayout(TILEDB_ROW_MAJOR); + + ByteBuffer a1Buffer = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a1byteMap = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a2Array = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a2Offsets = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + ByteBuffer a2byteMapBuffer = ByteBuffer.allocateDirect(1024).order(ByteOrder.nativeOrder()); + + query.setBufferNullableNIO("a1", a1Buffer, a1byteMap); + query.setBufferNullableNIO("a2", a2Offsets, a2Array, a2byteMapBuffer); + + // Submit query + query.submit(); + + int[] a1Values = new int[5]; + byte[] a1ByteMapValues = new byte[5]; + + byte[] a2Bytes = new byte[10]; + long[] a2Off = new long[5]; + byte[] a2ByteMap = new byte[5]; + + int idx = 0; + int bytesIdx = 0; + while (a1Buffer.hasRemaining()) { + a1Values[idx] = a1Buffer.getInt(); + a1ByteMapValues[idx] = a1byteMap.get(); + + a2Bytes[bytesIdx++] = a2Array.get(); + a2Bytes[bytesIdx++] = a2Array.get(); + + a2ByteMap[idx] = a2byteMapBuffer.get(); + a2Off[idx] = a2Offsets.getLong(); + idx++; + } + + Assert.assertArrayEquals(new int[] {1, 2, 3, 4, 5}, a1Values); + Assert.assertArrayEquals(new byte[] {0, 0, 0, 1, 1}, a1ByteMapValues); + Assert.assertArrayEquals( + new String[] {"aa", "bb", "cc", "dd", "ee"}, Util.bytesToStrings(a2Off, a2Bytes)); + Assert.assertArrayEquals(new byte[] {1, 1, 1, 0, 0}, a2ByteMap); + } + } + } } diff --git a/swig/customCode/Utils.java b/swig/customCode/Utils.java index a6101a6a..a5bad870 100644 --- a/swig/customCode/Utils.java +++ b/swig/customCode/Utils.java @@ -1,5 +1,7 @@ package io.tiledb.libtiledb; +import java.nio.ByteBuffer; + public class Utils { public static int32_tArray newInt32_tArray(int[] array) { @@ -180,6 +182,84 @@ public static int tiledb_query_submit_async( callback); } + public static int tiledb_query_set_subarray_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, SWIGTYPE_p_tiledb_query_t query, ByteBuffer subarray) { + return tiledbJNI.tiledb_query_set_subarray_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), SWIGTYPE_p_tiledb_query_t.getCPtr(query), subarray); + } + + public static int tiledb_query_set_buffer_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size) { + return tiledbJNI.tiledb_query_set_buffer_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size)); + } + + public static int tiledb_query_set_buffer_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size, + ByteBuffer validity_bytemap, + SWIGTYPE_p_unsigned_long_long validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size), + validity_bytemap, + SWIGTYPE_p_unsigned_long_long.getCPtr(validity_bytemap_size)); + } + + public static int tiledb_query_set_buffer_var_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer buffer_off, + SWIGTYPE_p_unsigned_long_long buffer_off_size, + ByteBuffer buffer_val, + SWIGTYPE_p_unsigned_long_long buffer_val_size) { + return tiledbJNI.tiledb_query_set_buffer_var_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + buffer_off, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_off_size), + buffer_val, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_val_size)); + } + + public static int tiledb_query_set_buffer_var_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t ctx, + SWIGTYPE_p_tiledb_query_t query, + String name, + ByteBuffer offsets, + SWIGTYPE_p_unsigned_long_long offsets_size, + ByteBuffer buffer, + SWIGTYPE_p_unsigned_long_long buffer_size, + ByteBuffer validity_bytemap, + SWIGTYPE_p_unsigned_long_long validity_bytemap_size) { + return tiledbJNI.tiledb_query_set_buffer_var_nullable_nio( + SWIGTYPE_p_tiledb_ctx_t.getCPtr(ctx), + SWIGTYPE_p_tiledb_query_t.getCPtr(query), + name, + offsets, + SWIGTYPE_p_unsigned_long_long.getCPtr(offsets_size), + buffer, + SWIGTYPE_p_unsigned_long_long.getCPtr(buffer_size), + validity_bytemap, + SWIGTYPE_p_unsigned_long_long.getCPtr(validity_bytemap_size)); + } + public static int tiledb_object_ls( SWIGTYPE_p_tiledb_ctx_t ctx, String path, PathCallback callback) { return tiledbJNI.tiledb_object_ls_java( diff --git a/swig/tiledb.i b/swig/tiledb.i index 88f010ed..5d81e1b0 100644 --- a/swig/tiledb.i +++ b/swig/tiledb.i @@ -2,6 +2,7 @@ %pragma(java) jniclassimports=%{ import io.tiledb.libtiledb.NativeLibLoader; +import java.nio.ByteBuffer; %} %pragma(java) jniclasscode=%{ @@ -17,6 +18,11 @@ import io.tiledb.libtiledb.NativeLibLoader; } } + public final static native int tiledb_query_set_subarray_nio(long jarg1, long jarg2, ByteBuffer jarg3); + public final static native int tiledb_query_set_buffer_nio(long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5); + public final static native int tiledb_query_set_buffer_var_nio(long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5, ByteBuffer jarg6, long jarg7); + public final static native int tiledb_query_set_buffer_nullable_nio(long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5, ByteBuffer jarg6, long jarg7); + public final static native int tiledb_query_set_buffer_var_nullable_nio(long jarg1, long jarg2, String jarg3, ByteBuffer jarg4, long jarg5, ByteBuffer jarg6, long jarg7, ByteBuffer jarg8, long jarg9); public final static native int tiledb_query_submit_async_java(long jarg1, SWIGTYPE_p_tiledb_ctx_t jarg1_, long jarg2, SWIGTYPE_p_tiledb_query_t jarg2_, Object jarg3); public final static native int tiledb_object_walk_java(long jarg1, SWIGTYPE_p_tiledb_ctx_t jarg1_, String jarg2, int jarg3, Object jarg4); public final static native int tiledb_object_ls_java(long jarg1, SWIGTYPE_p_tiledb_ctx_t jarg1_, String jarg2, Object jarg3);