static IntPtr n_Hello_Ljava_lang_Class_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
        {
            global::Com.Spotify.Protocol.Client.IRemoteClient __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClient> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Java.Lang.Class p0 = global::Java.Lang.Object.GetObject <global::Java.Lang.Class> (native_p0, JniHandleOwnership.DoNotTransfer);
            IntPtr __ret = JNIEnv.ToLocalJniHandle(__this.Hello(p0));

            return(__ret);
        }
        static IntPtr n_Subscribe_Ljava_lang_String_Ljava_lang_Class_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
        {
            global::Com.Spotify.Protocol.Client.IRemoteClient __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClient> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            string p0 = JNIEnv.GetString(native_p0, JniHandleOwnership.DoNotTransfer);

            global::Java.Lang.Class p1 = global::Java.Lang.Object.GetObject <global::Java.Lang.Class> (native_p1, JniHandleOwnership.DoNotTransfer);
            IntPtr __ret = JNIEnv.ToLocalJniHandle(__this.Subscribe(p0, p1));

            return(__ret);
        }
        public unsafe void OnConnected(global::Com.Spotify.Protocol.Client.IRemoteClient p0)
        {
            if (id_onConnected_Lcom_spotify_protocol_client_RemoteClient_ == IntPtr.Zero)
            {
                id_onConnected_Lcom_spotify_protocol_client_RemoteClient_ = JNIEnv.GetMethodID(class_ref, "onConnected", "(Lcom/spotify/protocol/client/RemoteClient;)V");
            }
            JValue *__args = stackalloc JValue [1];

            __args [0] = new JValue((p0 == null) ? IntPtr.Zero : ((global::Java.Lang.Object)p0).Handle);
            JNIEnv.CallVoidMethod(((global::Java.Lang.Object) this).Handle, id_onConnected_Lcom_spotify_protocol_client_RemoteClient_, __args);
        }
        public unsafe ConnectApiImpl(global::Com.Spotify.Protocol.Client.IRemoteClient client)
            : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
        {
            const string __id = "(Lcom/spotify/protocol/client/RemoteClient;)V";

            if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero)
            {
                return;
            }

            try {
                JniArgumentValue *__args = stackalloc JniArgumentValue [1];
                __args [0] = new JniArgumentValue((client == null) ? IntPtr.Zero : ((global::Java.Lang.Object)client).Handle);
                var __r = _members.InstanceMethods.StartCreateInstance(__id, ((object)this).GetType(), __args);
                SetHandle(__r.Handle, JniHandleOwnership.TransferLocalRef);
                _members.InstanceMethods.FinishCreateInstance(__id, this, __args);
            } finally {
            }
        }
 static void n_OnConnected_Lcom_spotify_protocol_client_RemoteClient_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Spotify.Protocol.Client.IRemoteClientConnectorConnectionCallback __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClientConnectorConnectionCallback> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Spotify.Protocol.Client.IRemoteClient p0 = (global::Com.Spotify.Protocol.Client.IRemoteClient)global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClient> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.OnConnected(p0);
 }
 static void n_Unsubscribe_Lcom_spotify_protocol_client_Subscription_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Spotify.Protocol.Client.IRemoteClient __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClient> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Spotify.Protocol.Client.Subscription  p0     = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.Subscription> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.Unsubscribe(p0);
 }
 static void n_Goodbye(IntPtr jnienv, IntPtr native__this)
 {
     global::Com.Spotify.Protocol.Client.IRemoteClient __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IRemoteClient> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     __this.Goodbye();
 }