public unsafe NetworkInformation(string name, global::Org.Webrtc.NetworkMonitorAutoDetect.ConnectionType type, global::Org.Webrtc.NetworkMonitorAutoDetect.ConnectionType underlyingTypeForVpn, long handle, global::Org.Webrtc.NetworkMonitorAutoDetect.IPAddress[] addresses) : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer) { const string __id = "(Ljava/lang/String;Lorg/webrtc/NetworkMonitorAutoDetect$ConnectionType;Lorg/webrtc/NetworkMonitorAutoDetect$ConnectionType;J[Lorg/webrtc/NetworkMonitorAutoDetect$IPAddress;)V"; if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero) { return; } IntPtr native_name = JNIEnv.NewString(name); IntPtr native_addresses = JNIEnv.NewArray(addresses); try { JniArgumentValue *__args = stackalloc JniArgumentValue [5]; __args [0] = new JniArgumentValue(native_name); __args [1] = new JniArgumentValue((type == null) ? IntPtr.Zero : ((global::Java.Lang.Object)type).Handle); __args [2] = new JniArgumentValue((underlyingTypeForVpn == null) ? IntPtr.Zero : ((global::Java.Lang.Object)underlyingTypeForVpn).Handle); __args [3] = new JniArgumentValue(handle); __args [4] = new JniArgumentValue(native_addresses); var __r = _members.InstanceMethods.StartCreateInstance(__id, ((object)this).GetType(), __args); SetHandle(__r.Handle, JniHandleOwnership.TransferLocalRef); _members.InstanceMethods.FinishCreateInstance(__id, this, __args); } finally { JNIEnv.DeleteLocalRef(native_name); if (addresses != null) { JNIEnv.CopyArray(native_addresses, addresses); JNIEnv.DeleteLocalRef(native_addresses); } } }
public unsafe void OnConnectionTypeChanged(global::Org.Webrtc.NetworkMonitorAutoDetect.ConnectionType p0) { if (id_onConnectionTypeChanged_Lorg_webrtc_NetworkMonitorAutoDetect_ConnectionType_ == IntPtr.Zero) { id_onConnectionTypeChanged_Lorg_webrtc_NetworkMonitorAutoDetect_ConnectionType_ = JNIEnv.GetMethodID(class_ref, "onConnectionTypeChanged", "(Lorg/webrtc/NetworkMonitorAutoDetect$ConnectionType;)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_onConnectionTypeChanged_Lorg_webrtc_NetworkMonitorAutoDetect_ConnectionType_, __args); }
static void n_OnConnectionTypeChanged_Lorg_webrtc_NetworkMonitorAutoDetect_ConnectionType_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0) { global::Org.Webrtc.NetworkMonitor.INetworkObserver __this = global::Java.Lang.Object.GetObject <global::Org.Webrtc.NetworkMonitor.INetworkObserver> (jnienv, native__this, JniHandleOwnership.DoNotTransfer); global::Org.Webrtc.NetworkMonitorAutoDetect.ConnectionType p0 = global::Java.Lang.Object.GetObject <global::Org.Webrtc.NetworkMonitorAutoDetect.ConnectionType> (native_p0, JniHandleOwnership.DoNotTransfer); __this.OnConnectionTypeChanged(p0); }