@@ -353,6 +353,34 @@ jobject MakeNativeSchemaResult(JNIEnv* env, struct ArrowSchema* schema) {
353353 static_cast <jlong>(reinterpret_cast <uintptr_t >(schema)));
354354}
355355
356+ JNIEXPORT void JNICALL
357+ Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_statementCancel (
358+ JNIEnv* env, [[maybe_unused]] jclass self, jlong handle) {
359+ struct AdbcError error = ADBC_ERROR_INIT;
360+ auto * ptr = reinterpret_cast <struct AdbcStatement *>(static_cast <uintptr_t >(handle));
361+ struct ArrowSchema schema = {};
362+ try {
363+ CHECK_ADBC_ERROR (AdbcStatementCancel (ptr, &error), error);
364+ } catch (const AdbcException& e) {
365+ e.ThrowJavaException (env);
366+ }
367+ }
368+
369+ JNIEXPORT jobject JNICALL
370+ Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_statementGetParameterSchema (
371+ JNIEnv* env, [[maybe_unused]] jclass self, jlong handle) {
372+ struct AdbcError error = ADBC_ERROR_INIT;
373+ auto * ptr = reinterpret_cast <struct AdbcStatement *>(static_cast <uintptr_t >(handle));
374+ struct ArrowSchema schema = {};
375+ try {
376+ CHECK_ADBC_ERROR (AdbcStatementGetParameterSchema (ptr, &schema, &error), error);
377+ return MakeNativeSchemaResult (env, &schema);
378+ } catch (const AdbcException& e) {
379+ e.ThrowJavaException (env);
380+ }
381+ return nullptr ;
382+ }
383+
356384JNIEXPORT jobject JNICALL
357385Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_statementExecuteQuery (
358386 JNIEnv* env, [[maybe_unused]] jclass self, jlong handle) {
@@ -621,6 +649,19 @@ Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_statementSetOptionString(
621649 }
622650}
623651
652+ JNIEXPORT void JNICALL
653+ Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_connectionCancel (
654+ JNIEnv* env, [[maybe_unused]] jclass self, jlong handle) {
655+ struct AdbcError error = ADBC_ERROR_INIT;
656+ auto * ptr = reinterpret_cast <struct AdbcConnection *>(static_cast <uintptr_t >(handle));
657+ struct ArrowSchema schema = {};
658+ try {
659+ CHECK_ADBC_ERROR (AdbcConnectionCancel (ptr, &error), error);
660+ } catch (const AdbcException& e) {
661+ e.ThrowJavaException (env);
662+ }
663+ }
664+
624665JNIEXPORT jobject JNICALL
625666Java_org_apache_arrow_adbc_driver_jni_impl_NativeAdbc_connectionGetObjects (
626667 JNIEnv* env, [[maybe_unused]] jclass self, jlong handle, jint depth, jstring catalog,
0 commit comments