static void n_GetPerformance_Lorg_android_spdy_SpdySession_Lorg_android_spdy_SslPermData_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
 {
     global::Org.Android.Spdy.ISslCertcb  __this = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.ISslCertcb> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Org.Android.Spdy.SpdySession p0     = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.SpdySession> (native_p0, JniHandleOwnership.DoNotTransfer);
     global::Org.Android.Spdy.SslPermData p1     = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.SslPermData> (native_p1, JniHandleOwnership.DoNotTransfer);
     __this.GetPerformance(p0, p1);
 }
        static IntPtr n_GetPublicKey_Lorg_android_spdy_SpdySession_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
        {
            global::Org.Android.Spdy.ISslCertcb  __this = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.ISslCertcb> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Org.Android.Spdy.SpdySession p0     = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.SpdySession> (native_p0, JniHandleOwnership.DoNotTransfer);
            IntPtr __ret = JNIEnv.ToLocalJniHandle(__this.GetPublicKey(p0));

            return(__ret);
        }
        static int n_PutCertificate_Lorg_android_spdy_SpdySession_arrayBI(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1, int p2)
        {
            global::Org.Android.Spdy.ISslCertcb  __this = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.ISslCertcb> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            global::Org.Android.Spdy.SpdySession p0     = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.SpdySession> (native_p0, JniHandleOwnership.DoNotTransfer);
            byte[] p1    = (byte[])JNIEnv.GetArray(native_p1, JniHandleOwnership.DoNotTransfer, typeof(byte));
            int    __ret = __this.PutCertificate(p0, p1, p2);

            if (p1 != null)
            {
                JNIEnv.CopyArray(p1, native_p1);
            }
            return(__ret);
        }
        public unsafe global::Org.Android.Spdy.SpdySession CreateSession(string p0, string p1, global::Java.Lang.Object p2, global::Org.Android.Spdy.ISessionCb p3, global::Org.Android.Spdy.ISslCertcb p4, int p5, int p6, int p7)
        {
            if (id_createSession_Ljava_lang_String_Ljava_lang_String_Ljava_lang_Object_Lorg_android_spdy_SessionCb_Lorg_android_spdy_SslCertcb_III == IntPtr.Zero)
            {
                id_createSession_Ljava_lang_String_Ljava_lang_String_Ljava_lang_Object_Lorg_android_spdy_SessionCb_Lorg_android_spdy_SslCertcb_III = JNIEnv.GetMethodID(class_ref, "createSession", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Lorg/android/spdy/SessionCb;Lorg/android/spdy/SslCertcb;III)Lorg/android/spdy/SpdySession;");
            }
            IntPtr native_p0 = JNIEnv.NewString(p0);
            IntPtr native_p1 = JNIEnv.NewString(p1);

            try {
                JValue *__args = stackalloc JValue [8];
                __args [0] = new JValue(native_p0);
                __args [1] = new JValue(native_p1);
                __args [2] = new JValue(p2);
                __args [3] = new JValue(p3);
                __args [4] = new JValue(p4);
                __args [5] = new JValue(p5);
                __args [6] = new JValue(p6);
                __args [7] = new JValue(p7);
                global::Org.Android.Spdy.SpdySession __ret = global::Java.Lang.Object.GetObject <global::Org.Android.Spdy.SpdySession> (JNIEnv.CallObjectMethod(((global::Java.Lang.Object) this).Handle, id_createSession_Ljava_lang_String_Ljava_lang_String_Ljava_lang_Object_Lorg_android_spdy_SessionCb_Lorg_android_spdy_SslCertcb_III, __args), JniHandleOwnership.TransferLocalRef);
                return(__ret);
            } finally {
                JNIEnv.DeleteLocalRef(native_p0);
                JNIEnv.DeleteLocalRef(native_p1);
            }
        }