예제 #1
0
        private async Task GetProPlusVersions()
        {
            await Retry.BlockAsync(3, 1, async() =>
            {
                var cd = new ProPlusDownloader();
                var channelVersionJson = await cd.GetChannelVersionJson();
                var branches           = GlobalObjects.ViewModel.JsonToBranches(channelVersionJson);
                if (branches != null)
                {
                    GlobalObjects.ViewModel.Branches = branches;
                }

                var ppDownload = new ProPlusDownloader();

                foreach (var channel in GlobalObjects.ViewModel.Branches)
                {
                    var latestVersion      = await ppDownload.GetLatestVersionAsync(channel.Branch.ToString(), OfficeEdition.Office32Bit);
                    channel.CurrentVersion = latestVersion;
                    if (channel.Versions.All(v => v.Version != latestVersion))
                    {
                        channel.Versions.Insert(0, new Build()
                        {
                            Version = latestVersion
                        });
                    }
                }
            });
        }