static void n_SetMedium_Ljava_lang_String_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
            {
                global::Com.Coinbase.Api.Entity.Merchant.Logo __this = global::Java.Lang.Object.GetObject <global::Com.Coinbase.Api.Entity.Merchant.Logo> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
                string p0 = JNIEnv.GetString(native_p0, JniHandleOwnership.DoNotTransfer);

                __this.Medium = p0;
            }
        public virtual unsafe void SetLogo(global::Com.Coinbase.Api.Entity.Merchant.Logo p0)
        {
            if (id_setLogo_Lcom_coinbase_api_entity_Merchant_Logo_ == IntPtr.Zero)
            {
                id_setLogo_Lcom_coinbase_api_entity_Merchant_Logo_ = JNIEnv.GetMethodID(class_ref, "setLogo", "(Lcom/coinbase/api/entity/Merchant$Logo;)V");
            }
            try {
                JValue *__args = stackalloc JValue [1];
                __args [0] = new JValue(p0);

                if (GetType() == ThresholdType)
                {
                    JNIEnv.CallVoidMethod(Handle, id_setLogo_Lcom_coinbase_api_entity_Merchant_Logo_, __args);
                }
                else
                {
                    JNIEnv.CallNonvirtualVoidMethod(Handle, ThresholdClass, JNIEnv.GetMethodID(ThresholdClass, "setLogo", "(Lcom/coinbase/api/entity/Merchant$Logo;)V"), __args);
                }
            } finally {
            }
        }
 static IntPtr n_GetMedium(IntPtr jnienv, IntPtr native__this)
 {
     global::Com.Coinbase.Api.Entity.Merchant.Logo __this = global::Java.Lang.Object.GetObject <global::Com.Coinbase.Api.Entity.Merchant.Logo> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     return(JNIEnv.NewString(__this.Medium));
 }
 static void n_SetLogo_Lcom_coinbase_api_entity_Merchant_Logo_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
 {
     global::Com.Coinbase.Api.Entity.Merchant      __this = global::Java.Lang.Object.GetObject <global::Com.Coinbase.Api.Entity.Merchant> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     global::Com.Coinbase.Api.Entity.Merchant.Logo p0     = global::Java.Lang.Object.GetObject <global::Com.Coinbase.Api.Entity.Merchant.Logo> (native_p0, JniHandleOwnership.DoNotTransfer);
     __this.SetLogo(p0);
 }