Exemple #1
0
 public Task <IEnumerable <RecordingInfo> > BuildDvrInfos(CancellationToken cancellationToken)
 {
     return(_dvrDataHelper.buildDvrInfos(cancellationToken));
 }
Exemple #2
0
        /// <summary>
        /// Gets the Recordings async
        /// </summary>
        /// <param name="cancellationToken">The cancellation token.</param>
        /// <returns>Task{IEnumerable{RecordingInfo}}</returns>
        public async Task <IEnumerable <RecordingInfo> > GetRecordingsAsync(CancellationToken cancellationToken)
        {
            // retrieve all 'Pending', 'Inprogress' and 'Completed' recordings
            // we don't deliver the 'Pending' recordings

            ensureConnection();

            int timeOut = await WaitForInitialLoadTask(cancellationToken);

            if (timeOut == -1 || cancellationToken.IsCancellationRequested)
            {
                _logger.Info("[TVHclient] GetRecordingsAsync, call canceled or timed out - returning empty list.");
                return(new List <RecordingInfo>());
            }

            //IEnumerable<RecordingInfo> data = await _dvrDataHelper.buildDvrInfos(cancellationToken);
            //return data;

            TaskWithTimeoutRunner <IEnumerable <RecordingInfo> > twtr   = new TaskWithTimeoutRunner <IEnumerable <RecordingInfo> >(TIMEOUT);
            TaskWithTimeoutResult <IEnumerable <RecordingInfo> > twtRes = await
                                                                          twtr.RunWithTimeout(_dvrDataHelper.buildDvrInfos(cancellationToken));

            if (twtRes.HasTimeout)
            {
                return(new List <RecordingInfo>());
            }

            return(twtRes.Result);
        }