/// <summary> /// The most important method => starts the party! Initiates everything that needs to be intiates /// </summary> /// <returns>Task that indicated when it's done</returns> public async Task StartSession() { using (var db = new MainDbContext()) { db.Database.Migrate(); } WebSocketConnection.Instance.TryStart(); await StartOrKillNetworkManagerBasedOnSettings(); VirtualDeviceService.UpdateBasedONSettings(); }
/// <summary>Ends session, deletes database and unsets all credentials.</summary> /// <returns></returns> public async Task SignOut() { await EndSession(); SettingsService.Instance.UnsetCreds(); SettingsService.Instance.ResetDatabaseAndPostSettings(); VirtualDeviceService.UpdateBasedONSettings(); await StartOrKillNetworkManagerBasedOnSettings(); // Delete the database. var localFolder = ApplicationData.Current.LocalFolder; await(await localFolder.GetItemAsync(MainDbContext.FileName)).DeleteAsync(); }
private async void OnResuming(object sender, object e) { LoggingService.LogInfo($"OnResuming ", Windows.Foundation.Diagnostics.LoggingLevel.Information); var completer = new TaskCompletionSource <object>(); AddSessionTask(completer.Task); await BroadcasterService.Instance.Resuming.Invoke(completer, true, true); await completer.Task; _networking?.Resume(); DatapointService.Instance.Resume(); WebSocketConnection.Instance.Resume(); VirtualDeviceService.UpdateBasedONSettings(); }