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

        /// [MediaController](https://developer.android.com/reference/android/media/session/MediaController.html#MediaController(android.content.Context,%20android.media.session.MediaSession.Token))
        ///
        /// Required features: "android-content-Context", "android-media-session-MediaSession_Token"
        #[cfg(any(feature = "all", all(feature = "android-content-Context", feature = "android-media-session-MediaSession_Token")))]
        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::android::media::session::MediaSession_Token>>) -> __jni_bindgen::std::result::Result<__jni_bindgen::Local<'env, crate::android::media::session::MediaController>, __jni_bindgen::Local<'env, crate::java::lang::Throwable>> {
            // class.path == "android/media/session/MediaController", java.flags == PUBLIC, .name == "<init>", .descriptor == "(Landroid/content/Context;Landroid/media/session/MediaSession$Token;)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/MediaController\0", "<init>\0", "(Landroid/content/Context;Landroid/media/session/MediaSession$Token;)V\0");
                __jni_env.new_object_a(__jni_class, __jni_method, __jni_args.as_ptr())
            }
        }

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

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

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

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

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

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

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

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

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

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

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

        /// [getSessionToken](https://developer.android.com/reference/android/media/session/MediaController.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/MediaController", 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/MediaController\0", "getSessionToken\0", "()Landroid/media/session/MediaSession$Token;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

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

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

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

        /// [registerCallback](https://developer.android.com/reference/android/media/session/MediaController.html#registerCallback(android.media.session.MediaController.Callback,%20android.os.Handler))
        ///
        /// Required features: "android-media-session-MediaController_Callback", "android-os-Handler"
        #[cfg(any(feature = "all", all(feature = "android-media-session-MediaController_Callback", feature = "android-os-Handler")))]
        pub fn registerCallback_Callback_Handler<'env>(&'env self, arg0: impl __jni_bindgen::std::convert::Into<__jni_bindgen::std::option::Option<&'env crate::android::media::session::MediaController_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/MediaController", java.flags == PUBLIC, .name == "registerCallback", .descriptor == "(Landroid/media/session/MediaController$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/MediaController\0", "registerCallback\0", "(Landroid/media/session/MediaController$Callback;Landroid/os/Handler;)V\0");
                __jni_env.call_void_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }

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

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

        /// [getPackageName](https://developer.android.com/reference/android/media/session/MediaController.html#getPackageName())
        ///
        /// Required features: "java-lang-String"
        #[cfg(any(feature = "all", all(feature = "java-lang-String")))]
        pub fn getPackageName<'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/media/session/MediaController", java.flags == PUBLIC, .name == "getPackageName", .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/media/session/MediaController\0", "getPackageName\0", "()Ljava/lang/String;\0");
                __jni_env.call_object_method_a(self.0.object, __jni_method, __jni_args.as_ptr())
            }
        }
    }
}