// WARNING: This file was autogenerated by jni-bindgen. Any changes to this file may be lost!!!
#[cfg(any(feature = "all", feature = "android-media-MediaDrm_CryptoSession"))]
__jni_bindgen! {
/// public final class [MediaDrm.CryptoSession](https://developer.android.com/reference/android/media/MediaDrm.CryptoSession.html)
///
/// Required feature: "android-media-MediaDrm_CryptoSession"
public final class MediaDrm_CryptoSession ("android/media/MediaDrm$CryptoSession") extends crate::java::lang::Object {
/// [encrypt](https://developer.android.com/reference/android/media/MediaDrm.CryptoSession.html#encrypt(byte%5B%5D,%20byte%5B%5D,%20byte%5B%5D))
pub fn encrypt<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __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/media/MediaDrm$CryptoSession", java.flags == PUBLIC, .name == "encrypt", .descriptor == "([B[B[B)[B"
unsafe {
let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1.into()), __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/media/MediaDrm$CryptoSession\0", "encrypt\0", "([B[B[B)[B\0");
__jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
}
}
/// [decrypt](https://developer.android.com/reference/android/media/MediaDrm.CryptoSession.html#decrypt(byte%5B%5D,%20byte%5B%5D,%20byte%5B%5D))
pub fn decrypt<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __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/media/MediaDrm$CryptoSession", java.flags == PUBLIC, .name == "decrypt", .descriptor == "([B[B[B)[B"
unsafe {
let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1.into()), __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/media/MediaDrm$CryptoSession\0", "decrypt\0", "([B[B[B)[B\0");
__jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
}
}
/// [sign](https://developer.android.com/reference/android/media/MediaDrm.CryptoSession.html#sign(byte%5B%5D,%20byte%5B%5D))
pub fn sign<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __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/media/MediaDrm$CryptoSession", java.flags == PUBLIC, .name == "sign", .descriptor == "([B[B)[B"
unsafe {
let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __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/media/MediaDrm$CryptoSession\0", "sign\0", "([B[B)[B\0");
__jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
}
}
/// [verify](https://developer.android.com/reference/android/media/MediaDrm.CryptoSession.html#verify(byte%5B%5D,%20byte%5B%5D,%20byte%5B%5D))
pub fn verify<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>, arg2: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env __jni_bindgen::ByteArray>>) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
// class.path == "android/media/MediaDrm$CryptoSession", java.flags == PUBLIC, .name == "verify", .descriptor == "([B[B[B)Z"
unsafe {
let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1.into()), __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/media/MediaDrm$CryptoSession\0", "verify\0", "([B[B[B)Z\0");
__jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
}
}
}
}