Esempio n. 1
0
 public void HandleTaskEnd(object s, DispatchEventArgs e)
 {
     QueuedTasks.Remove(e.Task.ID);
     if (!e.Task.Recurring)
     {
         Tasks.Remove(e.Task);
     }
     if ((PuckCache.UpdateTaskLastRun && !e.Task.Recurring) || (PuckCache.UpdateRecurringTaskLastRun && e.Task.Recurring))
     {
         var repo     = PuckCache.PuckRepo;
         var taskMeta = repo.GetPuckMeta().Where(x => x.Name == DBNames.Tasks && x.ID == e.Task.ID).FirstOrDefault();
         if (taskMeta != null)
         {
             taskMeta.Value = JsonConvert.SerializeObject(e.Task);
             repo.SaveChanges();
             repo = null;
         }
     }
 }
Esempio n. 2
0
        public void HandleTaskEnd(object s, DispatchEventArgs e)
        {
            int removedId = 0;

            QueuedTasks.Remove(e.Task.ID, out removedId);
            if (!e.Task.Recurring)
            {
                Tasks.Remove(e.Task);
            }
            if ((PuckCache.UpdateTaskLastRun && !e.Task.Recurring) || (PuckCache.UpdateRecurringTaskLastRun && e.Task.Recurring))
            {
                using (var scope = PuckCache.ServiceProvider.CreateScope())
                {
                    var repo     = scope.ServiceProvider.GetService <I_Puck_Repository>();
                    var taskMeta = repo.GetPuckMeta().Where(x => x.Name == DBNames.Tasks && x.ID == e.Task.ID).FirstOrDefault();
                    if (taskMeta != null)
                    {
                        taskMeta.Value = JsonConvert.SerializeObject(e.Task);
                        repo.SaveChanges();
                        repo = null;
                    }
                }
            }
        }