static void n_OnData_arrayBI(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, int p1)
 {
     global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     byte[] p0 = (byte[])JNIEnv.GetArray(native_p0, JniHandleOwnership.DoNotTransfer, typeof(byte));
     __this.OnData(p0, p1);
     if (p0 != null)
     {
         JNIEnv.CopyArray(p0, native_p0);
     }
 }
        public unsafe void SetDataInput(global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput p0)
        {
            if (id_setDataInput_Lcom_spotify_protocol_client_AppProtocolIo_DataInput_ == IntPtr.Zero)
            {
                id_setDataInput_Lcom_spotify_protocol_client_AppProtocolIo_DataInput_ = JNIEnv.GetMethodID(class_ref, "setDataInput", "(Lcom/spotify/protocol/client/AppProtocolIo$DataInput;)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_setDataInput_Lcom_spotify_protocol_client_AppProtocolIo_DataInput_, __args);
        }
        public virtual unsafe void SetDataInput(global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput dataInput)
        {
            const string __id = "setDataInput.(Lcom/spotify/protocol/client/AppProtocolIo$DataInput;)V";

            try {
                JniArgumentValue *__args = stackalloc JniArgumentValue [1];
                __args [0] = new JniArgumentValue((dataInput == null) ? IntPtr.Zero : ((global::Java.Lang.Object)dataInput).Handle);
                _members.InstanceMethods.InvokeVirtualVoidMethod(__id, this, __args);
            } finally {
            }
        }
 static void n_SetDataInput_Lcom_spotify_protocol_client_AppProtocolIo_DataInput_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Spotify.Protocol.Client.IAppProtocolIo          __this = global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IAppProtocolIo> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput p0     = (global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput)global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.SetDataInput(p0);
 }
 static void n_SetDataInput_Lcom_spotify_protocol_client_AppProtocolIo_DataInput_(IntPtr jnienv, IntPtr native__this, IntPtr native_dataInput)
 {
     global::Com.Spotify.Android.Appremote.Internal.RemoteServiceIo __this    = global::Java.Lang.Object.GetObject <global::Com.Spotify.Android.Appremote.Internal.RemoteServiceIo> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput    dataInput = (global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput)global::Java.Lang.Object.GetObject <global::Com.Spotify.Protocol.Client.IAppProtocolIoDataInput> (native_dataInput, JniHandleOwnership.DoNotTransfer);
     __this.SetDataInput(dataInput);
 }