Пример #1
0
        /// <inheritdoc />
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            // Debug.WriteLine("VPNDEMO: Entering VpnBackgroundTask.Run");

            //Take a deferral
            serviceDeferral = taskInstance.GetDeferral();

            try
            {
                if (VpnBackgroundTask.vpnPlugin == null)
                {
                    Debug.WriteLine("VPNDEMO: creating vpn plugin... ");
                    VpnBackgroundTask.vpnPlugin = new SslVpnPlugin();

                    taskInstance.Canceled += OnTaskCanceled;
                }

                Debug.WriteLine("VPNDEMO: Calling ProcessEventAsync...");
                VpnChannel.ProcessEventAsync(VpnBackgroundTask.vpnPlugin, taskInstance.TriggerDetails);
            }
            catch (Exception ex)
            {
                Debug.WriteLine($"VPNDEMO: unhandled exception in VpnBackgroundTask.Run: {ex.Message} ");
            }

            // we're done complete the deferral
            serviceDeferral.Complete();

            //Debug.WriteLine($"VPNDEMO: Exiting VpnBackgroundTask.Run");
        }
Пример #2
0
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            var deferral = taskInstance.GetDeferral();

            _toyVpnPlugin = _toyVpnPlugin ?? new ToyVpnPlugin();
            VpnChannel.ProcessEventAsync(_toyVpnPlugin, taskInstance.TriggerDetails);
            deferral.Complete();
        }
Пример #3
0
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            BackgroundTaskDeferral def = taskInstance.GetDeferral();



            VpnPlgin plg = new VpnPlgin();

            VpnChannel.ProcessEventAsync(plg, taskInstance.TriggerDetails);
        }
Пример #4
0
 public void Run(IBackgroundTaskInstance taskInstance)
 {
     try
     {
         var plugin = GetPlugin() as VpnPlugin;
         VpnChannel.ProcessEventAsync(GetPlugin(), taskInstance.TriggerDetails);
     }
     catch { }
     finally
     {
         taskInstance.GetDeferral().Complete();
     }
 }
Пример #5
0
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            var backgroundTaskDeferral = taskInstance.GetDeferral();

            try
            {
                VpnChannel.ProcessEventAsync(GetPlugin(), taskInstance.TriggerDetails);
            }
            catch { }
            finally
            {
                backgroundTaskDeferral.Complete();
            }
        }
Пример #6
0
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            var initDebugSocketNeeded = DebugLogger.InitNeeded();

            if (initDebugSocketNeeded)
            {
                try
                {
                    var _ = DebugLogger.InitDebugSocket();
                }
                catch (Exception) { }
            }
            VpnChannel.ProcessEventAsync(Plugin, taskInstance.TriggerDetails);
            DebugLogger.Log("VPN Background task finished");
        }
Пример #7
0
 public void Run(IBackgroundTaskInstance taskInstance)
 {
     VpnChannel.ProcessEventAsync(GetPlugin(), taskInstance.TriggerDetails);
 }
Пример #8
0
        BackgroundTaskDeferral _deferral; // Note: defined at class scope so we can mark it complete inside the OnCancel() callback if we choose to support cancellation

        public void Run(IBackgroundTaskInstance taskInstance)
        {
            VpnChannel.ProcessEventAsync("ShadowsocksBG.VpnPlugInImpl", taskInstance);
        }