private void ProgressHandler(long releaseId, int videoId, int progress, long speed, VideoQuality quality, long downloaded) { var release = m_Downloads.FirstOrDefault(a => a.ReleaseId == releaseId); if (release == null) { return; } var downloadRelease = m_DownloadService.GetDownloadRelease(releaseId); release.CurrentDownloadVideo = downloadRelease.Videos .Where(a => a.Id == videoId) .FirstOrDefault(a => a.IsProgress)?.Id ?? 0; release.DownloadProgress = progress; release.DownloadedHdVideos = downloadRelease.Videos.Count(a => a.IsDownloaded && a.Quality == VideoQuality.HD); release.AllDownloadedSize = downloadRelease.Videos.Any() ? FileHelper.GetFileSize((long)downloadRelease.Videos.Sum(a => (long)a.DownloadedSize)) : FileHelper.GetFileSize(0); release.DownloadedSdVideos = downloadRelease.Videos.Count(a => a.IsDownloaded && a.Quality == VideoQuality.SD); release.DownloadSpeed = FileHelper.GetFileSize(speed) + "/с"; release.NotDownloadedVideos = downloadRelease.Videos.Count(a => !a.IsDownloaded); release.Active = downloadRelease.Active && downloadRelease.Videos.Any(a => a.IsProgress); var displayQuality = GetDisplayQuality(quality); var video = release.Videos.Where(a => a.Order == videoId && a.Quality == displayQuality).FirstOrDefault(); if (video == null) { return; } video.IsProgress = true; video.DownloadedSize = FileHelper.GetFileSize(downloaded); }
private void ProgressHandler(long releaseId, int videoId, int progress, long speed) { var release = m_Downloads.FirstOrDefault(a => a.ReleaseId == releaseId); if (release == null) { return; } var downloadRelease = m_DownloadService.GetDownloadRelease(releaseId); release.CurrentDownloadVideo = downloadRelease.Videos .Where(a => a.Id == videoId) .FirstOrDefault(a => a.IsProgress)?.Id ?? 0; release.DownloadProgress = progress; release.DownloadedHdVideos = downloadRelease.Videos.Count(a => a.IsDownloaded && a.Quality == VideoQuality.HD); release.DownloadedSdVideos = downloadRelease.Videos.Count(a => a.IsDownloaded && a.Quality == VideoQuality.SD); release.DownloadSpeed = FileHelper.GetFileSize(speed) + "/с"; release.NotDownloadedVideos = downloadRelease.Videos.Count(a => !a.IsDownloaded); }