Beispiel #1
0
        /// <inheritdoc />
        async IAsyncEnumerable <IMenuItem> IAppMenu.LoadJobsAsync()
        {
            IMenuItem[] jobInfoItems;
            try
            {
                jobInfoItems = await jobs
                               .InfoAboutAllAsync()
                               .Select((jobInfo, index) => new JobMenuItem(jobInfo, (byte)index))
                               .ToArrayAsync()
                               .ConfigureAwait(false);
            }
            catch (Exception exception)
            {
                logger.LogError(exception, "failed to get info about jobs from main host.");
                yield break;
            }

            foreach (var jobInfo in jobInfoItems)
            {
                yield return(jobInfo);
            }
        }