jni-android-sys 0.0.10

Autogenerated glue code for access Android JVM APIs from Rust
// WARNING:  This file was autogenerated by jni-bindgen.  Any changes to this file may be lost!!!


#[cfg(any(feature = "all", feature = "android-mtp-MtpDevice"))]
__jni_bindgen! {
    /// public final class [MtpDevice](https://developer.android.com/reference/android/mtp/MtpDevice.html)
    ///
    /// Required feature: "android-mtp-MtpDevice"
    public final class MtpDevice ("android/mtp/MtpDevice") extends crate::java::lang::Object {

        /// [MtpDevice](https://developer.android.com/reference/android/mtp/MtpDevice.html#MtpDevice(android.hardware.usb.UsbDevice))
        ///
        /// Required features: "android-hardware-usb-UsbDevice"
        #[cfg(any(feature = "all", all(feature = "android-hardware-usb-UsbDevice")))]
        pub fn new<'env>(__jni_env: &'env __jni_bindgen::Env, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::hardware::usb::UsbDevice>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::Local<'env, crate::android::mtp::MtpDevice>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "<init>", .descriptor == "(Landroid/hardware/usb/UsbDevice;)V"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "<init>\0", "(Landroid/hardware/usb/UsbDevice;)V\0");
                __jni_env.new_object_a(__jni_class, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [open](https://developer.android.com/reference/android/mtp/MtpDevice.html#open(android.hardware.usb.UsbDeviceConnection))
        ///
        /// Required features: "android-hardware-usb-UsbDeviceConnection"
        #[cfg(any(feature = "all", all(feature = "android-hardware-usb-UsbDeviceConnection")))]
        pub fn open<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::hardware::usb::UsbDeviceConnection>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "open", .descriptor == "(Landroid/hardware/usb/UsbDeviceConnection;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "open\0", "(Landroid/hardware/usb/UsbDeviceConnection;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [close](https://developer.android.com/reference/android/mtp/MtpDevice.html#close())
        pub fn close<'env>(&'env self) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "close", .descriptor == "()V"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "close\0", "()V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getDeviceName](https://developer.android.com/reference/android/mtp/MtpDevice.html#getDeviceName())
        ///
        /// Required features: "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "java-lang-String")))]
        pub fn getDeviceName<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::java::lang::String>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getDeviceName", .descriptor == "()Ljava/lang/String;"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getDeviceName\0", "()Ljava/lang/String;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getDeviceId](https://developer.android.com/reference/android/mtp/MtpDevice.html#getDeviceId())
        pub fn getDeviceId<'env>(&'env self) -> __jni_bindgen::std::result::Result<i32, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getDeviceId", .descriptor == "()I"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getDeviceId\0", "()I\0");
                __jni_env.call_int_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [toString](https://developer.android.com/reference/android/mtp/MtpDevice.html#toString())
        ///
        /// Required features: "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "java-lang-String")))]
        pub fn toString<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::java::lang::String>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "toString", .descriptor == "()Ljava/lang/String;"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "toString\0", "()Ljava/lang/String;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getDeviceInfo](https://developer.android.com/reference/android/mtp/MtpDevice.html#getDeviceInfo())
        ///
        /// Required features: "android-mtp-MtpDeviceInfo"
        #[cfg(any(feature = "all", all(feature = "android-mtp-MtpDeviceInfo")))]
        pub fn getDeviceInfo<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::mtp::MtpDeviceInfo>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getDeviceInfo", .descriptor == "()Landroid/mtp/MtpDeviceInfo;"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getDeviceInfo\0", "()Landroid/mtp/MtpDeviceInfo;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getStorageIds](https://developer.android.com/reference/android/mtp/MtpDevice.html#getStorageIds())
        pub fn getStorageIds<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, __jni_bindgen::IntArray>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getStorageIds", .descriptor == "()[I"
            unsafe {
                let __jni_args = [];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getStorageIds\0", "()[I\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getObjectHandles](https://developer.android.com/reference/android/mtp/MtpDevice.html#getObjectHandles(int,%20int,%20int))
        pub fn getObjectHandles<'env>(&'env self, arg0: i32, arg1: i32, arg2: i32) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, __jni_bindgen::IntArray>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getObjectHandles", .descriptor == "(III)[I"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getObjectHandles\0", "(III)[I\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getObject](https://developer.android.com/reference/android/mtp/MtpDevice.html#getObject(int,%20int))
        pub fn getObject<'env>(&'env self, arg0: i32, arg1: i32) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, __jni_bindgen::ByteArray>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getObject", .descriptor == "(II)[B"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getObject\0", "(II)[B\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getPartialObject](https://developer.android.com/reference/android/mtp/MtpDevice.html#getPartialObject(int,%20long,%20long,%20byte%5B%5D))
        pub fn getPartialObject<'env>(&'env self, arg0: i32, arg1: i64, arg2: i64, arg3: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __jni_bindgen::std::result::Result<i64, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getPartialObject", .descriptor == "(IJJ[B)J"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2), __jni_bindgen::AsJValue::as_jvalue(&arg3.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getPartialObject\0", "(IJJ[B)J\0");
                __jni_env.call_long_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getPartialObject64](https://developer.android.com/reference/android/mtp/MtpDevice.html#getPartialObject64(int,%20long,%20long,%20byte%5B%5D))
        pub fn getPartialObject64<'env>(&'env self, arg0: i32, arg1: i64, arg2: i64, arg3: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __jni_bindgen::std::result::Result<i64, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getPartialObject64", .descriptor == "(IJJ[B)J"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2), __jni_bindgen::AsJValue::as_jvalue(&arg3.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getPartialObject64\0", "(IJJ[B)J\0");
                __jni_env.call_long_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getThumbnail](https://developer.android.com/reference/android/mtp/MtpDevice.html#getThumbnail(int))
        pub fn getThumbnail<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, __jni_bindgen::ByteArray>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getThumbnail", .descriptor == "(I)[B"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getThumbnail\0", "(I)[B\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getStorageInfo](https://developer.android.com/reference/android/mtp/MtpDevice.html#getStorageInfo(int))
        ///
        /// Required features: "android-mtp-MtpStorageInfo"
        #[cfg(any(feature = "all", all(feature = "android-mtp-MtpStorageInfo")))]
        pub fn getStorageInfo<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::mtp::MtpStorageInfo>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getStorageInfo", .descriptor == "(I)Landroid/mtp/MtpStorageInfo;"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getStorageInfo\0", "(I)Landroid/mtp/MtpStorageInfo;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getObjectInfo](https://developer.android.com/reference/android/mtp/MtpDevice.html#getObjectInfo(int))
        ///
        /// Required features: "android-mtp-MtpObjectInfo"
        #[cfg(any(feature = "all", all(feature = "android-mtp-MtpObjectInfo")))]
        pub fn getObjectInfo<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::mtp::MtpObjectInfo>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getObjectInfo", .descriptor == "(I)Landroid/mtp/MtpObjectInfo;"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getObjectInfo\0", "(I)Landroid/mtp/MtpObjectInfo;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [deleteObject](https://developer.android.com/reference/android/mtp/MtpDevice.html#deleteObject(int))
        pub fn deleteObject<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "deleteObject", .descriptor == "(I)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "deleteObject\0", "(I)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getParent](https://developer.android.com/reference/android/mtp/MtpDevice.html#getParent(int))
        pub fn getParent<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<i64, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getParent", .descriptor == "(I)J"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getParent\0", "(I)J\0");
                __jni_env.call_long_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getStorageId](https://developer.android.com/reference/android/mtp/MtpDevice.html#getStorageId(int))
        pub fn getStorageId<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<i64, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "getStorageId", .descriptor == "(I)J"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0)];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "getStorageId\0", "(I)J\0");
                __jni_env.call_long_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [importFile](https://developer.android.com/reference/android/mtp/MtpDevice.html#importFile(int,%20java.lang.String))
        ///
        /// Required features: "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "java-lang-String")))]
        pub fn importFile_int_String<'env>(&'env self, arg0: i32, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::lang::String>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "importFile", .descriptor == "(ILjava/lang/String;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "importFile\0", "(ILjava/lang/String;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [importFile](https://developer.android.com/reference/android/mtp/MtpDevice.html#importFile(int,%20android.os.ParcelFileDescriptor))
        ///
        /// Required features: "android-os-ParcelFileDescriptor"
        #[cfg(any(feature = "all", all(feature = "android-os-ParcelFileDescriptor")))]
        pub fn importFile_int_ParcelFileDescriptor<'env>(&'env self, arg0: i32, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::ParcelFileDescriptor>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "importFile", .descriptor == "(ILandroid/os/ParcelFileDescriptor;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "importFile\0", "(ILandroid/os/ParcelFileDescriptor;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [sendObject](https://developer.android.com/reference/android/mtp/MtpDevice.html#sendObject(int,%20long,%20android.os.ParcelFileDescriptor))
        ///
        /// Required features: "android-os-ParcelFileDescriptor"
        #[cfg(any(feature = "all", all(feature = "android-os-ParcelFileDescriptor")))]
        pub fn sendObject<'env>(&'env self, arg0: i32, arg1: i64, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::ParcelFileDescriptor>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "sendObject", .descriptor == "(IJLandroid/os/ParcelFileDescriptor;)Z"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0), __jni_bindgen::AsJValue::as_jvalue(&arg1), __jni_bindgen::AsJValue::as_jvalue(&arg2.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "sendObject\0", "(IJLandroid/os/ParcelFileDescriptor;)Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [sendObjectInfo](https://developer.android.com/reference/android/mtp/MtpDevice.html#sendObjectInfo(android.mtp.MtpObjectInfo))
        ///
        /// Required features: "android-mtp-MtpObjectInfo"
        #[cfg(any(feature = "all", all(feature = "android-mtp-MtpObjectInfo")))]
        pub fn sendObjectInfo<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::mtp::MtpObjectInfo>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::mtp::MtpObjectInfo>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "sendObjectInfo", .descriptor == "(Landroid/mtp/MtpObjectInfo;)Landroid/mtp/MtpObjectInfo;"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "sendObjectInfo\0", "(Landroid/mtp/MtpObjectInfo;)Landroid/mtp/MtpObjectInfo;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [readEvent](https://developer.android.com/reference/android/mtp/MtpDevice.html#readEvent(android.os.CancellationSignal))
        ///
        /// Required features: "android-mtp-MtpEvent", "android-os-CancellationSignal"
        #[cfg(any(feature = "all", all(feature = "android-mtp-MtpEvent", feature = "android-os-CancellationSignal")))]
        pub fn readEvent<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::CancellationSignal>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::mtp::MtpEvent>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/mtp/MtpDevice", java.flags == PUBLIC, .name == "readEvent", .descriptor == "(Landroid/os/CancellationSignal;)Landroid/mtp/MtpEvent;"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into())];
                let __jni_env = __jni_bindgen::Env::from_ptr(self.0.env);
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/mtp/MtpDevice\0", "readEvent\0", "(Landroid/os/CancellationSignal;)Landroid/mtp/MtpEvent;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }
    }
}