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);
                    }
                }
            }
Ejemplo n.º 2
0
            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);
            }
Ejemplo n.º 3
0
 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);
 }