Ejemplo n.º 1
0
 private void deleteAllEpisodeThatOldDate()
 {
     try
     {
         using (var context = new NTVideoEntities())
         {
             var episodesNeedDeleteQuery = from enutl in context.episode_need_update_to_live
                                           where enutl.dateCreate < DateTime.Today
                                           select enutl;
             var a = episodesNeedDeleteQuery.ToArray();
             context.episode_need_update_to_live.RemoveRange(episodesNeedDeleteQuery.ToArray());
             context.SaveChanges();
         }
     }
     catch (DbEntityValidationException e)
     {
         foreach (var eve in e.EntityValidationErrors)
         {
             Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                               eve.Entry.Entity.GetType().Name, eve.Entry.State);
             foreach (var ve in eve.ValidationErrors)
             {
                 Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                   ve.PropertyName, ve.ErrorMessage);
             }
         }
     }
 }
Ejemplo n.º 2
0
 private void InitializeTimerUpdatingVictimThread()
 {
     threadUpdatingVictim = new Thread(() =>
     {
         while (threadUpdatingVictim.IsAlive)
         {
             try
             {
                 Console.WriteLine("victimsNeedUpdate length: " + episodesNeedUpdateToLive.Count);
                 while (isUpating || episodesNeedUpdateToLive.Count == 0)
                 {
                     Thread.Sleep(1000);
                 }
                 var enutl = episodesNeedUpdateToLive[0];
                 using (var context = new NTVideoEntities())
                 {
                     var episodeNeedUpdateQuery = from e in context.episode_need_update_to_live
                                                  where e.status == 0 && e.episodeUpdateToLiveId == enutl.episodeUpdateToLiveId //status = 0(not ok), 1(ok)
                                                  select e;
                     var episodeNeedUpdateToLive = episodeNeedUpdateQuery.FirstOrDefault();
                     if (episodeNeedUpdateToLive != null)
                     {
                         isUpating             = true;
                         victimServiceInstance = (BaseVictim)VICTIM_INSTANCE[episodeNeedUpdateToLive.victim.victimTypeNo.ToString()];
                         episodeNeedUpdateToLive.victim.playListHtml = getEpisodePlayerInfoByIndexAndRebuildPlayListHtml(Int32.Parse(episodeNeedUpdateToLive.serverIndex.ToString()), Int32.Parse(episodeNeedUpdateToLive.episodeIndex.ToString()), episodeNeedUpdateToLive.victim.playListHtml);
                         episodeNeedUpdateToLive.status = 1;
                         context.Entry(episodeNeedUpdateToLive.victim).State = System.Data.Entity.EntityState.Modified;
                         context.SaveChanges();
                         episodesNeedUpdateToLive.RemoveAt(0);
                         isUpating = false;
                     }
                 }
             }
             catch (DbEntityValidationException e)
             {
                 foreach (var eve in e.EntityValidationErrors)
                 {
                     Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                       eve.Entry.Entity.GetType().Name, eve.Entry.State);
                     foreach (var ve in eve.ValidationErrors)
                     {
                         Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                           ve.PropertyName, ve.ErrorMessage);
                     }
                 }
                 episodesNeedUpdateToLive.RemoveAt(0);
                 isUpating = false;
             }
         }
     });
     threadUpdatingVictim.IsBackground = true;
     threadUpdatingVictim.SetApartmentState(ApartmentState.STA);
     threadUpdatingVictim.Start();
 }
Ejemplo n.º 3
0
 private bool saveDownloadInfoToDB(download updateDownload, string name, string savePath, string status, dynamic movie, dynamic victim, NTVideoEntities context)
 {
     victim.downloadStatus = status;
     if (updateDownload == null)
     {
         var download = new download()
         {
             victimId = victim.victimId,
             name     = name,
             savePath = savePath,
             status   = status
         };
         victim.downloads.Add(download);
         context.Entry(victim).State = System.Data.Entity.EntityState.Modified;
     }
     else
     {
         updateDownload.status = status;
         context.Entry(updateDownload).State = System.Data.Entity.EntityState.Modified;
     }
     context.SaveChanges();
     return(true);
 }
Ejemplo n.º 4
0
        public bool beginUpdateContent()
        {
            try
            {
                using (var context = new NTVideoEntities())
                {
                    var victimUpdateQuery = from m in context.movies
                                            from v in context.victims
                                            where m.movieId == v.movieId && m.isPublic == 1 && v.victimTypeNo == victimTypeNo && !(movieUpdatedTemp.Contains(v.movieDetailHref))
                                            orderby v.isContinue descending, m.publishYear descending, v.priority descending, v.viewed descending
                        select new { m, v };
                    var updateInfo = victimUpdateQuery.FirstOrDefault();
                    if (updateInfo != null)
                    {
                        updatePositionTypeOnHomePage(updateInfo.m);
                        context.Entry(updateInfo.m).State = System.Data.Entity.EntityState.Modified;
                        context.SaveChanges();
                        var victim       = updateInfo.v;
                        var victimUpdate = getVictim(getRootNode(victim.movieDetailHref.Replace("http://", "http://www.")));
                        if (victimUpdate != null)
                        {
                            if (victim.currentEpisode < victimUpdate.currentEpisode ||
                                victim.schedule != victimUpdate.schedule ||
                                victim.viewed < victimUpdate.viewed ||
                                victim.priority < victimUpdate.priority ||
                                victim.isTrailer != victimUpdate.isTrailer ||
                                victim.playListHtml != victim.playListHtml)
                            {
                                logForm.append("=====================   Begin update: " + victim.movieHref);
                                victim.dateUpdate     = victimUpdate.dateUpdate;
                                victim.currentEpisode = victimUpdate.currentEpisode;
                                victim.totalEpisode   = victimUpdate.totalEpisode;
                                victim.isContinue     = victimUpdate.isContinue;
                                victim.hasTrans       = victimUpdate.hasTrans;
                                victim.hasDubbing     = victimUpdate.hasDubbing;
                                victim.hasSub         = victimUpdate.hasSub;
                                victim.hasTrans       = victimUpdate.hasTrans;
                                victim.quality        = victimUpdate.quality;
                                victim.updateState    = victim.updateState + 1;
                                victim.viewed         = victimUpdate.viewed;
                                victim.rating         = victimUpdate.rating;
                                victim.schedule       = victimUpdate.schedule;
                                victim.isTrailer      = victimUpdate.isTrailer;
                                victim.playListHtml   = victimUpdate.playListHtml;

                                context.Entry(victim).State = System.Data.Entity.EntityState.Modified;
                                context.SaveChanges();
                            }
                        }
                        else
                        {
                            updateInfo.m.isPublic             = 0;
                            context.Entry(updateInfo.m).State = System.Data.Entity.EntityState.Modified;
                            context.SaveChanges();
                        }
                        movieUpdatedTemp.Add(victim.movieDetailHref);
                    }
                }
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    logForm.append(String.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                                 eve.Entry.Entity.GetType().Name, eve.Entry.State));
                    foreach (var ve in eve.ValidationErrors)
                    {
                        logForm.append(String.Format("- Property: \"{0}\", Error: \"{1}\"",
                                                     ve.PropertyName, ve.ErrorMessage));
                    }
                }
            }

            return(true);
        }