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-media-session-MediaSession"))]
__jni_bindgen! {
    /// public final class [MediaSession](https://developer.android.com/reference/android/media/session/MediaSession.html)
    ///
    /// Required feature: "android-media-session-MediaSession"
    public final class MediaSession ("android/media/session/MediaSession") extends crate::java::lang::Object {

        /// [MediaSession](https://developer.android.com/reference/android/media/session/MediaSession.html#MediaSession(android.content.Context,%20java.lang.String))
        ///
        /// Required features: "android-content-Context", "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "android-content-Context", feature = "java-lang-String")))]
        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::content::Context>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::lang::String>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::Local<'env, crate::android::media::session::MediaSession>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "<init>", .descriptor == "(Landroid/content/Context;Ljava/lang/String;)V"
            unsafe {
                let __jni_args = [__jni_bindgen::AsJValue::as_jvalue(&arg0.into()), __jni_bindgen::AsJValue::as_jvalue(&arg1.into())];
                let (__jni_class, __jni_method) = __jni_env.require_class_method("android/media/session/MediaSession\0", "<init>\0", "(Landroid/content/Context;Ljava/lang/String;)V\0");
                __jni_env.new_object_a(__jni_class, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setCallback](https://developer.android.com/reference/android/media/session/MediaSession.html#setCallback(android.media.session.MediaSession.Callback))
        ///
        /// Required features: "android-media-session-MediaSession_Callback"
        #[cfg(any(feature = "all", all(feature = "android-media-session-MediaSession_Callback")))]
        pub fn setCallback_Callback<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::session::MediaSession_Callback>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setCallback", .descriptor == "(Landroid/media/session/MediaSession$Callback;)V"
            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/media/session/MediaSession\0", "setCallback\0", "(Landroid/media/session/MediaSession$Callback;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setCallback](https://developer.android.com/reference/android/media/session/MediaSession.html#setCallback(android.media.session.MediaSession.Callback,%20android.os.Handler))
        ///
        /// Required features: "android-media-session-MediaSession_Callback", "android-os-Handler"
        #[cfg(any(feature = "all", all(feature = "android-media-session-MediaSession_Callback", feature = "android-os-Handler")))]
        pub fn setCallback_Callback_Handler<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::session::MediaSession_Callback>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::Handler>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setCallback", .descriptor == "(Landroid/media/session/MediaSession$Callback;Landroid/os/Handler;)V"
            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/session/MediaSession\0", "setCallback\0", "(Landroid/media/session/MediaSession$Callback;Landroid/os/Handler;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setSessionActivity](https://developer.android.com/reference/android/media/session/MediaSession.html#setSessionActivity(android.app.PendingIntent))
        ///
        /// Required features: "android-app-PendingIntent"
        #[cfg(any(feature = "all", all(feature = "android-app-PendingIntent")))]
        pub fn setSessionActivity<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::app::PendingIntent>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setSessionActivity", .descriptor == "(Landroid/app/PendingIntent;)V"
            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/media/session/MediaSession\0", "setSessionActivity\0", "(Landroid/app/PendingIntent;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setMediaButtonReceiver](https://developer.android.com/reference/android/media/session/MediaSession.html#setMediaButtonReceiver(android.app.PendingIntent))
        ///
        /// Required features: "android-app-PendingIntent"
        #[cfg(any(feature = "all", all(feature = "android-app-PendingIntent")))]
        pub fn setMediaButtonReceiver<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::app::PendingIntent>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setMediaButtonReceiver", .descriptor == "(Landroid/app/PendingIntent;)V"
            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/media/session/MediaSession\0", "setMediaButtonReceiver\0", "(Landroid/app/PendingIntent;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setFlags](https://developer.android.com/reference/android/media/session/MediaSession.html#setFlags(int))
        pub fn setFlags<'env>(&'env self, arg0: i32) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setFlags", .descriptor == "(I)V"
            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/media/session/MediaSession\0", "setFlags\0", "(I)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setPlaybackToLocal](https://developer.android.com/reference/android/media/session/MediaSession.html#setPlaybackToLocal(android.media.AudioAttributes))
        ///
        /// Required features: "android-media-AudioAttributes"
        #[cfg(any(feature = "all", all(feature = "android-media-AudioAttributes")))]
        pub fn setPlaybackToLocal<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::AudioAttributes>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setPlaybackToLocal", .descriptor == "(Landroid/media/AudioAttributes;)V"
            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/media/session/MediaSession\0", "setPlaybackToLocal\0", "(Landroid/media/AudioAttributes;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setPlaybackToRemote](https://developer.android.com/reference/android/media/session/MediaSession.html#setPlaybackToRemote(android.media.VolumeProvider))
        ///
        /// Required features: "android-media-VolumeProvider"
        #[cfg(any(feature = "all", all(feature = "android-media-VolumeProvider")))]
        pub fn setPlaybackToRemote<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::VolumeProvider>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setPlaybackToRemote", .descriptor == "(Landroid/media/VolumeProvider;)V"
            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/media/session/MediaSession\0", "setPlaybackToRemote\0", "(Landroid/media/VolumeProvider;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setActive](https://developer.android.com/reference/android/media/session/MediaSession.html#setActive(boolean))
        pub fn setActive<'env>(&'env self, arg0: bool) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setActive", .descriptor == "(Z)V"
            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/media/session/MediaSession\0", "setActive\0", "(Z)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [isActive](https://developer.android.com/reference/android/media/session/MediaSession.html#isActive())
        pub fn isActive<'env>(&'env self) -> __jni_bindgen::std::result::Result<bool, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "isActive", .descriptor == "()Z"
            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/media/session/MediaSession\0", "isActive\0", "()Z\0");
                __jni_env.call_boolean_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [sendSessionEvent](https://developer.android.com/reference/android/media/session/MediaSession.html#sendSessionEvent(java.lang.String,%20android.os.Bundle))
        ///
        /// Required features: "android-os-Bundle", "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "android-os-Bundle", feature = "java-lang-String")))]
        pub fn sendSessionEvent<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::lang::String>>, arg1: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::Bundle>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "sendSessionEvent", .descriptor == "(Ljava/lang/String;Landroid/os/Bundle;)V"
            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/session/MediaSession\0", "sendSessionEvent\0", "(Ljava/lang/String;Landroid/os/Bundle;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [release](https://developer.android.com/reference/android/media/session/MediaSession.html#release())
        pub fn release<'env>(&'env self) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "release", .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/media/session/MediaSession\0", "release\0", "()V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getSessionToken](https://developer.android.com/reference/android/media/session/MediaSession.html#getSessionToken())
        ///
        /// Required features: "android-media-session-MediaSession_Token"
        #[cfg(any(feature = "all", all(feature = "android-media-session-MediaSession_Token")))]
        pub fn getSessionToken<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::media::session::MediaSession_Token>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "getSessionToken", .descriptor == "()Landroid/media/session/MediaSession$Token;"
            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/media/session/MediaSession\0", "getSessionToken\0", "()Landroid/media/session/MediaSession$Token;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [getController](https://developer.android.com/reference/android/media/session/MediaSession.html#getController())
        ///
        /// Required features: "android-media-session-MediaController"
        #[cfg(any(feature = "all", all(feature = "android-media-session-MediaController")))]
        pub fn getController<'env>(&'env self) -> __jni_bindgen::std::result::Result<__jni_bindgen::std::option::Option<__jni_bindgen::Local<'env, crate::android::media::session::MediaController>>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "getController", .descriptor == "()Landroid/media/session/MediaController;"
            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/media/session/MediaSession\0", "getController\0", "()Landroid/media/session/MediaController;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setPlaybackState](https://developer.android.com/reference/android/media/session/MediaSession.html#setPlaybackState(android.media.session.PlaybackState))
        ///
        /// Required features: "android-media-session-PlaybackState"
        #[cfg(any(feature = "all", all(feature = "android-media-session-PlaybackState")))]
        pub fn setPlaybackState<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::session::PlaybackState>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setPlaybackState", .descriptor == "(Landroid/media/session/PlaybackState;)V"
            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/media/session/MediaSession\0", "setPlaybackState\0", "(Landroid/media/session/PlaybackState;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setMetadata](https://developer.android.com/reference/android/media/session/MediaSession.html#setMetadata(android.media.MediaMetadata))
        ///
        /// Required features: "android-media-MediaMetadata"
        #[cfg(any(feature = "all", all(feature = "android-media-MediaMetadata")))]
        pub fn setMetadata<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::MediaMetadata>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setMetadata", .descriptor == "(Landroid/media/MediaMetadata;)V"
            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/media/session/MediaSession\0", "setMetadata\0", "(Landroid/media/MediaMetadata;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setQueue](https://developer.android.com/reference/android/media/session/MediaSession.html#setQueue(java.util.List))
        ///
        /// Required features: "java-util-List"
        #[cfg(any(feature = "all", all(feature = "java-util-List")))]
        pub fn setQueue<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::util::List>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setQueue", .descriptor == "(Ljava/util/List;)V"
            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/media/session/MediaSession\0", "setQueue\0", "(Ljava/util/List;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setQueueTitle](https://developer.android.com/reference/android/media/session/MediaSession.html#setQueueTitle(java.lang.CharSequence))
        ///
        /// Required features: "java-lang-CharSequence"
        #[cfg(any(feature = "all", all(feature = "java-lang-CharSequence")))]
        pub fn setQueueTitle<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::java::lang::CharSequence>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setQueueTitle", .descriptor == "(Ljava/lang/CharSequence;)V"
            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/media/session/MediaSession\0", "setQueueTitle\0", "(Ljava/lang/CharSequence;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// [setExtras](https://developer.android.com/reference/android/media/session/MediaSession.html#setExtras(android.os.Bundle))
        ///
        /// Required features: "android-os-Bundle"
        #[cfg(any(feature = "all", all(feature = "android-os-Bundle")))]
        pub fn setExtras<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::os::Bundle>>) -> __jni_bindgen::std::result::Result<(), __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaSession", java.flags == PUBLIC, .name == "setExtras", .descriptor == "(Landroid/os/Bundle;)V"
            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/media/session/MediaSession\0", "setExtras\0", "(Landroid/os/Bundle;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

        /// public static final [FLAG_HANDLES_MEDIA_BUTTONS](https://developer.android.com/reference/android/media/session/MediaSession.html#FLAG_HANDLES_MEDIA_BUTTONS)
        pub const FLAG_HANDLES_MEDIA_BUTTONS : i32 = 1;

        /// public static final [FLAG_HANDLES_TRANSPORT_CONTROLS](https://developer.android.com/reference/android/media/session/MediaSession.html#FLAG_HANDLES_TRANSPORT_CONTROLS)
        pub const FLAG_HANDLES_TRANSPORT_CONTROLS : i32 = 2;
    }
}