private async Task EnsureDataLoadedInner() { try { _loadedData = await TheSetupMarketApiProvider.GetSetup(_information.Id) ?? ""; _iniFile = IniFile.Parse(_loadedData); Tyres = _iniFile["TYRES"].GetInt("VALUE", 0); Logging.Debug(Tyres); OnPropertyChanged(nameof(Values)); } finally { _loaded = true; _loadingTask = null; } }
private static async Task <ArgumentHandleResult> ProcessTheSetupMarketSetup(string id) { var details = await TheSetupMarketApiProvider.GetSetupFullInformation(id); if (details == null) { throw new InformativeException(AppStrings.Arguments_CannotInstallCarSetup, "The Setup Market is unavailable or has changed."); } var car = CarsManager.Instance.GetById(details.Item1.CarId); var track = details.Item1.TrackKunosId == null ? null : TracksManager.Instance.GetLayoutByKunosId(details.Item1.TrackKunosId); var setupId = details.Item1.FileName; var result = ShowDialog(new SharedEntry { Author = details.Item1.Author, Name = setupId.ApartFromLast(".ini", StringComparison.OrdinalIgnoreCase), Data = new byte[0], EntryType = SharedEntryType.CarSetup, Id = setupId, Target = car?.DisplayName ?? details.Item1.CarId }, applyable: false, additionalButton: AppStrings.Arguments_SaveAsGeneric); switch (result) { case Choise.Save: case Choise.Extra: var filename = FileUtils.EnsureUnique(Path.Combine(AcPaths.GetCarSetupsDirectory(details.Item1.CarId), result == Choise.Save ? (track?.Id ?? details.Item1.TrackKunosId ?? CarSetupObject.GenericDirectory) : CarSetupObject.GenericDirectory, setupId)); FileUtils.EnsureFileDirectoryExists(filename); File.WriteAllText(filename, details.Item2); return(ArgumentHandleResult.SuccessfulShow); default: return(ArgumentHandleResult.Failed); } }
public static async Task <TheSetupMarketAsManager> CreateAsync(CarObject car) { var data = await TheSetupMarketApiProvider.GetAvailableSetups(car.Id); return(data == null ? null : new TheSetupMarketAsManager(car.Id, data)); }
public static async Task <TheSetupMarketAsManager> CreateAsync(CarObject car) { return(new TheSetupMarketAsManager(car.Id, await TheSetupMarketApiProvider.GetAvailableSetups(car.Id).ConfigureAwait(false))); }
private async void UpdateTsmSetupsCount() { TsmSetupsCount = (await TheSetupMarketApiProvider.GetAvailableSetups(Id))?.Count; }