wxr
2023-07-31 27cb19320ed4ac5552c17a263d0887a7cb88edc9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
using System;
using System.Collections.Generic;
using Android.Runtime;
using Java.Interop;
 
namespace Com.Tencent.Tinker.Lib.Reporter {
 
    // Metadata.xml XPath class reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']"
    [global::Android.Runtime.Register ("com/tencent/tinker/lib/reporter/DefaultPatchReporter", DoNotGenerateAcw=true)]
    public partial class DefaultPatchReporter : global::Java.Lang.Object, global::Com.Tencent.Tinker.Lib.Reporter.IPatchReporter {
 
        // Metadata.xml XPath field reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/field[@name='context']"
        [Register ("context")]
        protected global::Android.Content.Context Context {
            get {
                const string __id = "context.Landroid/content/Context;";
 
                var __v = _members.InstanceFields.GetObjectValue (__id, this);
                return global::Java.Lang.Object.GetObject<global::Android.Content.Context> (__v.Handle, JniHandleOwnership.TransferLocalRef);
            }
            set {
                const string __id = "context.Landroid/content/Context;";
 
                IntPtr native_value = global::Android.Runtime.JNIEnv.ToLocalJniHandle (value);
                try {
                    _members.InstanceFields.SetValue (__id, this, new JniObjectReference (native_value));
                } finally {
                    global::Android.Runtime.JNIEnv.DeleteLocalRef (native_value);
                }
            }
        }
 
        static readonly JniPeerMembers _members = new XAPeerMembers ("com/tencent/tinker/lib/reporter/DefaultPatchReporter", typeof (DefaultPatchReporter));
 
        internal static IntPtr class_ref {
            get { return _members.JniPeerType.PeerReference.Handle; }
        }
 
        [global::System.Diagnostics.DebuggerBrowsable (global::System.Diagnostics.DebuggerBrowsableState.Never)]
        [global::System.ComponentModel.EditorBrowsable (global::System.ComponentModel.EditorBrowsableState.Never)]
        public override global::Java.Interop.JniPeerMembers JniPeerMembers {
            get { return _members; }
        }
 
        [global::System.Diagnostics.DebuggerBrowsable (global::System.Diagnostics.DebuggerBrowsableState.Never)]
        [global::System.ComponentModel.EditorBrowsable (global::System.ComponentModel.EditorBrowsableState.Never)]
        protected override IntPtr ThresholdClass {
            get { return _members.JniPeerType.PeerReference.Handle; }
        }
 
        [global::System.Diagnostics.DebuggerBrowsable (global::System.Diagnostics.DebuggerBrowsableState.Never)]
        [global::System.ComponentModel.EditorBrowsable (global::System.ComponentModel.EditorBrowsableState.Never)]
        protected override global::System.Type ThresholdType {
            get { return _members.ManagedPeerType; }
        }
 
        protected DefaultPatchReporter (IntPtr javaReference, JniHandleOwnership transfer) : base (javaReference, transfer)
        {
        }
 
        // Metadata.xml XPath constructor reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/constructor[@name='DefaultPatchReporter' and count(parameter)=1 and parameter[1][@type='android.content.Context']]"
        [Register (".ctor", "(Landroid/content/Context;)V", "")]
        public unsafe DefaultPatchReporter (global::Android.Content.Context context) : base (IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
        {
            const string __id = "(Landroid/content/Context;)V";
 
            if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero)
                return;
 
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [1];
                __args [0] = new JniArgumentValue ((context == null) ? IntPtr.Zero : ((global::Java.Lang.Object) context).Handle);
                var __r = _members.InstanceMethods.StartCreateInstance (__id, ((object) this).GetType (), __args);
                SetHandle (__r.Handle, JniHandleOwnership.TransferLocalRef);
                _members.InstanceMethods.FinishCreateInstance (__id, this, __args);
            } finally {
                global::System.GC.KeepAlive (context);
            }
        }
 
        static Delegate cb_onPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_;
#pragma warning disable 0169
        static Delegate GetOnPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_Handler ()
        {
            if (cb_onPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_ == null)
                cb_onPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_ = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLLL_V) n_OnPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_);
            return cb_onPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_;
        }
 
        static void n_OnPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_ (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, IntPtr native_dexFiles, IntPtr native_t)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            var dexFiles = global::Android.Runtime.JavaList<global::Java.IO.File>.FromJniHandle (native_dexFiles, JniHandleOwnership.DoNotTransfer);
            var t = global::Java.Lang.Object.GetObject<global::Java.Lang.Throwable> (native_t, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchDexOptFail (patchFile, dexFiles, t);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchDexOptFail' and count(parameter)=3 and parameter[1][@type='java.io.File'] and parameter[2][@type='java.util.List&lt;java.io.File&gt;'] and parameter[3][@type='java.lang.Throwable']]"
        [Register ("onPatchDexOptFail", "(Ljava/io/File;Ljava/util/List;Ljava/lang/Throwable;)V", "GetOnPatchDexOptFail_Ljava_io_File_Ljava_util_List_Ljava_lang_Throwable_Handler")]
        public virtual unsafe void OnPatchDexOptFail (global::Java.IO.File patchFile, global::System.Collections.Generic.IList<global::Java.IO.File> dexFiles, global::Java.Lang.Throwable t)
        {
            const string __id = "onPatchDexOptFail.(Ljava/io/File;Ljava/util/List;Ljava/lang/Throwable;)V";
            IntPtr native_dexFiles = global::Android.Runtime.JavaList<global::Java.IO.File>.ToLocalJniHandle (dexFiles);
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [3];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue (native_dexFiles);
                __args [2] = new JniArgumentValue ((t == null) ? IntPtr.Zero : ((global::Java.Lang.Throwable) t).Handle);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                JNIEnv.DeleteLocalRef (native_dexFiles);
                global::System.GC.KeepAlive (patchFile);
                global::System.GC.KeepAlive (dexFiles);
                global::System.GC.KeepAlive (t);
            }
        }
 
        static Delegate cb_onPatchException_Ljava_io_File_Ljava_lang_Throwable_;
#pragma warning disable 0169
        static Delegate GetOnPatchException_Ljava_io_File_Ljava_lang_Throwable_Handler ()
        {
            if (cb_onPatchException_Ljava_io_File_Ljava_lang_Throwable_ == null)
                cb_onPatchException_Ljava_io_File_Ljava_lang_Throwable_ = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLL_V) n_OnPatchException_Ljava_io_File_Ljava_lang_Throwable_);
            return cb_onPatchException_Ljava_io_File_Ljava_lang_Throwable_;
        }
 
        static void n_OnPatchException_Ljava_io_File_Ljava_lang_Throwable_ (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, IntPtr native_e)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            var e = global::Java.Lang.Object.GetObject<global::Java.Lang.Throwable> (native_e, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchException (patchFile, e);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchException' and count(parameter)=2 and parameter[1][@type='java.io.File'] and parameter[2][@type='java.lang.Throwable']]"
        [Register ("onPatchException", "(Ljava/io/File;Ljava/lang/Throwable;)V", "GetOnPatchException_Ljava_io_File_Ljava_lang_Throwable_Handler")]
        public virtual unsafe void OnPatchException (global::Java.IO.File patchFile, global::Java.Lang.Throwable e)
        {
            const string __id = "onPatchException.(Ljava/io/File;Ljava/lang/Throwable;)V";
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [2];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue ((e == null) ? IntPtr.Zero : ((global::Java.Lang.Throwable) e).Handle);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                global::System.GC.KeepAlive (patchFile);
                global::System.GC.KeepAlive (e);
            }
        }
 
        static Delegate cb_onPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_;
#pragma warning disable 0169
        static Delegate GetOnPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_Handler ()
        {
            if (cb_onPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_ == null)
                cb_onPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_ = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLLL_V) n_OnPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_);
            return cb_onPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_;
        }
 
        static void n_OnPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_ (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, IntPtr native_oldVersion, IntPtr native_newVersion)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            var oldVersion = JNIEnv.GetString (native_oldVersion, JniHandleOwnership.DoNotTransfer);
            var newVersion = JNIEnv.GetString (native_newVersion, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchInfoCorrupted (patchFile, oldVersion, newVersion);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchInfoCorrupted' and count(parameter)=3 and parameter[1][@type='java.io.File'] and parameter[2][@type='java.lang.String'] and parameter[3][@type='java.lang.String']]"
        [Register ("onPatchInfoCorrupted", "(Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V", "GetOnPatchInfoCorrupted_Ljava_io_File_Ljava_lang_String_Ljava_lang_String_Handler")]
        public virtual unsafe void OnPatchInfoCorrupted (global::Java.IO.File patchFile, string oldVersion, string newVersion)
        {
            const string __id = "onPatchInfoCorrupted.(Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V";
            IntPtr native_oldVersion = JNIEnv.NewString (oldVersion);
            IntPtr native_newVersion = JNIEnv.NewString (newVersion);
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [3];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue (native_oldVersion);
                __args [2] = new JniArgumentValue (native_newVersion);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                JNIEnv.DeleteLocalRef (native_oldVersion);
                JNIEnv.DeleteLocalRef (native_newVersion);
                global::System.GC.KeepAlive (patchFile);
            }
        }
 
        static Delegate cb_onPatchPackageCheckFail_Ljava_io_File_I;
#pragma warning disable 0169
        static Delegate GetOnPatchPackageCheckFail_Ljava_io_File_IHandler ()
        {
            if (cb_onPatchPackageCheckFail_Ljava_io_File_I == null)
                cb_onPatchPackageCheckFail_Ljava_io_File_I = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLI_V) n_OnPatchPackageCheckFail_Ljava_io_File_I);
            return cb_onPatchPackageCheckFail_Ljava_io_File_I;
        }
 
        static void n_OnPatchPackageCheckFail_Ljava_io_File_I (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, int errorCode)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchPackageCheckFail (patchFile, errorCode);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchPackageCheckFail' and count(parameter)=2 and parameter[1][@type='java.io.File'] and parameter[2][@type='int']]"
        [Register ("onPatchPackageCheckFail", "(Ljava/io/File;I)V", "GetOnPatchPackageCheckFail_Ljava_io_File_IHandler")]
        public virtual unsafe void OnPatchPackageCheckFail (global::Java.IO.File patchFile, int errorCode)
        {
            const string __id = "onPatchPackageCheckFail.(Ljava/io/File;I)V";
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [2];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue (errorCode);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                global::System.GC.KeepAlive (patchFile);
            }
        }
 
        static Delegate cb_onPatchResult_Ljava_io_File_ZJ;
#pragma warning disable 0169
        static Delegate GetOnPatchResult_Ljava_io_File_ZJHandler ()
        {
            if (cb_onPatchResult_Ljava_io_File_ZJ == null)
                cb_onPatchResult_Ljava_io_File_ZJ = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLZJ_V) n_OnPatchResult_Ljava_io_File_ZJ);
            return cb_onPatchResult_Ljava_io_File_ZJ;
        }
 
        static void n_OnPatchResult_Ljava_io_File_ZJ (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, bool success, long cost)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchResult (patchFile, success, cost);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchResult' and count(parameter)=3 and parameter[1][@type='java.io.File'] and parameter[2][@type='boolean'] and parameter[3][@type='long']]"
        [Register ("onPatchResult", "(Ljava/io/File;ZJ)V", "GetOnPatchResult_Ljava_io_File_ZJHandler")]
        public virtual unsafe void OnPatchResult (global::Java.IO.File patchFile, bool success, long cost)
        {
            const string __id = "onPatchResult.(Ljava/io/File;ZJ)V";
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [3];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue (success);
                __args [2] = new JniArgumentValue (cost);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                global::System.GC.KeepAlive (patchFile);
            }
        }
 
        static Delegate cb_onPatchServiceStart_Landroid_content_Intent_;
#pragma warning disable 0169
        static Delegate GetOnPatchServiceStart_Landroid_content_Intent_Handler ()
        {
            if (cb_onPatchServiceStart_Landroid_content_Intent_ == null)
                cb_onPatchServiceStart_Landroid_content_Intent_ = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPL_V) n_OnPatchServiceStart_Landroid_content_Intent_);
            return cb_onPatchServiceStart_Landroid_content_Intent_;
        }
 
        static void n_OnPatchServiceStart_Landroid_content_Intent_ (IntPtr jnienv, IntPtr native__this, IntPtr native_intent)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var intent = global::Java.Lang.Object.GetObject<global::Android.Content.Intent> (native_intent, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchServiceStart (intent);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchServiceStart' and count(parameter)=1 and parameter[1][@type='android.content.Intent']]"
        [Register ("onPatchServiceStart", "(Landroid/content/Intent;)V", "GetOnPatchServiceStart_Landroid_content_Intent_Handler")]
        public virtual unsafe void OnPatchServiceStart (global::Android.Content.Intent intent)
        {
            const string __id = "onPatchServiceStart.(Landroid/content/Intent;)V";
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [1];
                __args [0] = new JniArgumentValue ((intent == null) ? IntPtr.Zero : ((global::Java.Lang.Object) intent).Handle);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                global::System.GC.KeepAlive (intent);
            }
        }
 
        static Delegate cb_onPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I;
#pragma warning disable 0169
        static Delegate GetOnPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_IHandler ()
        {
            if (cb_onPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I == null)
                cb_onPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I = JNINativeWrapper.CreateDelegate ((_JniMarshal_PPLLLI_V) n_OnPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I);
            return cb_onPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I;
        }
 
        static void n_OnPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_I (IntPtr jnienv, IntPtr native__this, IntPtr native_patchFile, IntPtr native_extractTo, IntPtr native_filename, int fileType)
        {
            var __this = global::Java.Lang.Object.GetObject<global::Com.Tencent.Tinker.Lib.Reporter.DefaultPatchReporter> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            var patchFile = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_patchFile, JniHandleOwnership.DoNotTransfer);
            var extractTo = global::Java.Lang.Object.GetObject<global::Java.IO.File> (native_extractTo, JniHandleOwnership.DoNotTransfer);
            var filename = JNIEnv.GetString (native_filename, JniHandleOwnership.DoNotTransfer);
            __this.OnPatchTypeExtractFail (patchFile, extractTo, filename, fileType);
        }
#pragma warning restore 0169
 
        // Metadata.xml XPath method reference: path="/api/package[@name='com.tencent.tinker.lib.reporter']/class[@name='DefaultPatchReporter']/method[@name='onPatchTypeExtractFail' and count(parameter)=4 and parameter[1][@type='java.io.File'] and parameter[2][@type='java.io.File'] and parameter[3][@type='java.lang.String'] and parameter[4][@type='int']]"
        [Register ("onPatchTypeExtractFail", "(Ljava/io/File;Ljava/io/File;Ljava/lang/String;I)V", "GetOnPatchTypeExtractFail_Ljava_io_File_Ljava_io_File_Ljava_lang_String_IHandler")]
        public virtual unsafe void OnPatchTypeExtractFail (global::Java.IO.File patchFile, global::Java.IO.File extractTo, string filename, int fileType)
        {
            const string __id = "onPatchTypeExtractFail.(Ljava/io/File;Ljava/io/File;Ljava/lang/String;I)V";
            IntPtr native_filename = JNIEnv.NewString (filename);
            try {
                JniArgumentValue* __args = stackalloc JniArgumentValue [4];
                __args [0] = new JniArgumentValue ((patchFile == null) ? IntPtr.Zero : ((global::Java.Lang.Object) patchFile).Handle);
                __args [1] = new JniArgumentValue ((extractTo == null) ? IntPtr.Zero : ((global::Java.Lang.Object) extractTo).Handle);
                __args [2] = new JniArgumentValue (native_filename);
                __args [3] = new JniArgumentValue (fileType);
                _members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
            } finally {
                JNIEnv.DeleteLocalRef (native_filename);
                global::System.GC.KeepAlive (patchFile);
                global::System.GC.KeepAlive (extractTo);
            }
        }
 
    }
}