public CologneBuffer(global::Com.Parse.Codec.Language.ColognePhonetic __self, int p1) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
            {
                if (Handle != IntPtr.Zero)
                {
                    return;
                }

                if (GetType() != typeof(CologneBuffer))
                {
                    SetHandle(
                        global::Android.Runtime.JNIEnv.StartCreateInstance(GetType(), "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";I)V", new JValue(__self), new JValue(p1)),
                        JniHandleOwnership.TransferLocalRef);
                    global::Android.Runtime.JNIEnv.FinishCreateInstance(Handle, "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";I)V", new JValue(__self), new JValue(p1));
                    return;
                }

                if (id_ctor_Lcom_parse_codec_language_ColognePhonetic_I == IntPtr.Zero)
                {
                    id_ctor_Lcom_parse_codec_language_ColognePhonetic_I = JNIEnv.GetMethodID(class_ref, "<init>", "(Lcom/parse/codec/language/ColognePhonetic;I)V");
                }
                SetHandle(
                    global::Android.Runtime.JNIEnv.StartCreateInstance(class_ref, id_ctor_Lcom_parse_codec_language_ColognePhonetic_I, new JValue(__self), new JValue(p1)),
                    JniHandleOwnership.TransferLocalRef);
                JNIEnv.FinishCreateInstance(Handle, class_ref, id_ctor_Lcom_parse_codec_language_ColognePhonetic_I, new JValue(__self), new JValue(p1));
            }
        static IntPtr n_Encode_Ljava_lang_String_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0)
        {
            global::Com.Parse.Codec.Language.ColognePhonetic __this = global::Java.Lang.Object.GetObject <global::Com.Parse.Codec.Language.ColognePhonetic> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            string p0    = JNIEnv.GetString(native_p0, JniHandleOwnership.DoNotTransfer);
            IntPtr __ret = JNIEnv.NewString(__this.Encode(p0));

            return(__ret);
        }
        static bool n_IsEncodeEqual_Ljava_lang_String_Ljava_lang_String_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0, IntPtr native_p1)
        {
            global::Com.Parse.Codec.Language.ColognePhonetic __this = global::Java.Lang.Object.GetObject <global::Com.Parse.Codec.Language.ColognePhonetic> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            string p0    = JNIEnv.GetString(native_p0, JniHandleOwnership.DoNotTransfer);
            string p1    = JNIEnv.GetString(native_p1, JniHandleOwnership.DoNotTransfer);
            bool   __ret = __this.IsEncodeEqual(p0, p1);

            return(__ret);
        }
            public CologneBuffer(global::Com.Parse.Codec.Language.ColognePhonetic __self, char[] p1) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
            {
                if (Handle != IntPtr.Zero)
                {
                    return;
                }

                IntPtr native_p1 = JNIEnv.NewArray(p1);;

                if (GetType() != typeof(CologneBuffer))
                {
                    SetHandle(
                        global::Android.Runtime.JNIEnv.StartCreateInstance(GetType(), "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";[C)V", new JValue(__self), new JValue(native_p1)),
                        JniHandleOwnership.TransferLocalRef);
                    global::Android.Runtime.JNIEnv.FinishCreateInstance(Handle, "(L" + global::Android.Runtime.JNIEnv.GetJniName(GetType().DeclaringType) + ";[C)V", new JValue(__self), new JValue(native_p1));
                    if (p1 != null)
                    {
                        JNIEnv.CopyArray(native_p1, p1);
                        JNIEnv.DeleteLocalRef(native_p1);
                    }
                    return;
                }

                if (id_ctor_Lcom_parse_codec_language_ColognePhonetic_arrayC == IntPtr.Zero)
                {
                    id_ctor_Lcom_parse_codec_language_ColognePhonetic_arrayC = JNIEnv.GetMethodID(class_ref, "<init>", "(Lcom/parse/codec/language/ColognePhonetic;[C)V");
                }
                SetHandle(
                    global::Android.Runtime.JNIEnv.StartCreateInstance(class_ref, id_ctor_Lcom_parse_codec_language_ColognePhonetic_arrayC, new JValue(__self), new JValue(native_p1)),
                    JniHandleOwnership.TransferLocalRef);
                JNIEnv.FinishCreateInstance(Handle, class_ref, id_ctor_Lcom_parse_codec_language_ColognePhonetic_arrayC, new JValue(__self), new JValue(native_p1));
                if (p1 != null)
                {
                    JNIEnv.CopyArray(native_p1, p1);
                    JNIEnv.DeleteLocalRef(native_p1);
                }
            }