コード例 #1
0
        void saveNewCastsToDb(Feed feed, RssHelper rssFeed)
        {
            int newCasts = 0;

            foreach (var rss in rssFeed.RssDnldInfos)
            {
                //Application.Current.Dispatcher.BeginInvoke(new Action(() =>  { // new Func<bool>(() => //tu: new Action(() =>

                DnLd dl;
                if (SaveToDnldRow_IsDnldRequired(feed, rss, out dl))
                {
                    Application.Current.Dispatcher.BeginInvoke(new Action(() =>
                    {
                        if (!CurrentDnLds.Contains(dl))
                        {
                            CurrentDnLds.Add(dl);
                        }
                    }));

                    newCasts++;

                    //? better wait for all feeds check to finish and then move on to dnlding: if (IsAutoNextStep) Dh.StartDownload(db, dl, dgD);					//Dh.LaunchIfDownloadRequiredMvvm(dl, ((DataGrid)dgD));
                }
                //}));
            }
            feed.CastQntNew    = newCasts;
            feed.CastQntTtl    = rssFeed.RssDnldInfos.Count;
            feed.StatusInfo    = $"{newCasts} / {rssFeed.RssDnldInfos.Count}"; //update feed with counts of new casts
            feed.LastCheckedAt = _now;
        }
コード例 #2
0
        void onDnldOne(object dgD)
        {
            Bpr.BeepOk();

            SelectedDnLd.ReDownload = true;

            //Application.Current.Dispatcher.BeginInvoke(new Action(() =>			{
            if (!CurrentDnLds.Contains(SelectedDnLd))
            {
                CurrentDnLds.Add(SelectedDnLd);
            }
            //}));

            onStartDnlds(dgD);             // StartDownload(SelectedDnLd, ((DataGrid)dgD));
        }
コード例 #3
0
        void onLoadExistingAudioFiles(object notUsed)
        {
            if (!Directory.Exists(MiscHelper.DirPlyr))
            {
                Directory.CreateDirectory(MiscHelper.DirPlyr);
            }

            foreach (var file in Directory.GetFiles(MiscHelper.DirPlyr))
            {
                if (!".m4a.mp3.wma.wav".Contains(Path.GetExtension(file).ToLower()))
                {
                    continue;
                }

                Debug.WriteLine(file, "Load FS exist-g");

                if (CurrentDnLds.FirstOrDefault(r => file.Contains(r.CastFilenameExt)) != null)
                {
                    continue;                                                                                             // already there
                }
                var t = Db.DnLds.FirstOrDefault(r => file.Contains(r.CastFilenameExt));
                if (t == null)
                {
                    Db.DnLds.Where(r => file.Contains(r.CastFilenameExt)).OrderByDescending(r => r.PublishedAt).Load();

                    t = Db.DnLds.FirstOrDefault(r => file.Contains(r.CastFilenameExt));
                    if (t == null)
                    {
                        t = Db.DnLds.FirstOrDefault(r => file.Contains(r.CastFilenameExt));
                    }
                    if (t == null)
                    {
                        Debug.WriteLine("   not in _db yet; strange.");
                    }
                }

                if (t != null)
                {
                    CurrentDnLds.Add(t);
                }
            }

            Bpr.BeepOk();
        }