public bool Start() { if (Active) { return(false); } if (Player.CurrentJob != null) { return(false); } ActivatedAt = DateTime.Now; while (JobSteps.Count > 0) { var currentStep = JobSteps.Dequeue(); if (!currentStep.Execute()) { } } return(true); }
public async Task <DateTimeOffset?> GetLastJobStepEndTime(long jobId) { var time = await JobSteps .Where(step => step.JobId == jobId && step.EndTime != null) .Select(step => step.EndTime) .OrderByDescending(endTime => endTime) .FirstOrDefaultAsync(); return(time); }
public ActionResult Steps(string dbServer, Guid jobID) { List <JobStepListModel> steps = new List <JobStepListModel>(); JobSteps jobSteps = new JobSteps(); steps = jobSteps.getSteps(dbServer, jobID); ViewBag.ServerName = dbServer; ViewBag.JobID = jobID; return(View(steps)); }
public async Task <Dictionary <JobStepStatus, int> > GetJobStepsStatus(long jobId) { return(await JobSteps.Where(step => step.JobId == jobId) .GroupBy(step => step.Status) .Select(grp => new { grp.Key, Count = grp.Count() }) .ToDictionaryAsync(item => item.Key, item => item.Count)); }
public ActionResult AddStep(string dbServer, Guid jobID) { JobSteps jobSteps = new JobSteps(); int stepID = jobSteps.addStep(dbServer, jobID); LogActivity log = new LogActivity(); log.Add(User.Identity.Name, dbServer, jobID, "Add Step"); return(RedirectToAction("EditStep", "Edit", new { dbServer = dbServer, jobID = jobID, stepID = stepID })); }
public ActionResult MoveStepDown(string dbServer, Guid jobID, int stepID) { JobSteps jobSteps = new JobSteps(); jobSteps.moveStepDown(dbServer, jobID, stepID); LogActivity log = new LogActivity(); log.Add(User.Identity.Name, dbServer, jobID, "Re-order Step"); return(RedirectToAction("Steps", "Edit", new { dbServer = dbServer, jobID = jobID })); }
public ActionResult EditStep(string dbServer, Guid jobID, int stepID) { JobSteps jobSteps = new JobSteps(); PopulateDropDowns dropdown = new PopulateDropDowns(); JobStepDetailsModel step = new JobStepDetailsModel(); List <SelectListItem> databaseList = new List <SelectListItem>(); List <SelectListItem> proxyList = new List <SelectListItem>(); List <SelectListItem> actionList = new List <SelectListItem>(); databaseList = dropdown.getDatabases(dbServer); ViewBag.DatabaseList = databaseList; proxyList = dropdown.getProxies(dbServer, AgentSubSystem.TransactSql); ViewBag.ProxyList = proxyList; actionList = dropdown.getActions(dbServer, jobID, stepID); ViewBag.ActionList = actionList; ViewBag.ServerName = dbServer; ViewBag.JobID = jobID; step = jobSteps.getStepDetails(dbServer, jobID, stepID); return(View(step)); }
public ActionResult EditStep(JobStepDetailsModel step) { if (ModelState.IsValid) { JobSteps jobSteps = new JobSteps(); jobSteps.saveStepDetails(step); ViewBag.ServerName = step.ServerName; ViewBag.JobID = step.JobID; LogActivity log = new LogActivity(); log.Add(User.Identity.Name, step.ServerName, step.JobID, "Edit Step"); return(RedirectToAction("Steps", "Edit", new { dbServer = step.ServerName, jobID = step.JobID })); } else { PopulateDropDowns dropdown = new PopulateDropDowns(); List <SelectListItem> databaseList = new List <SelectListItem>(); List <SelectListItem> proxyList = new List <SelectListItem>(); List <SelectListItem> actionList = new List <SelectListItem>(); databaseList = dropdown.getDatabases(step.ServerName); ViewBag.DatabaseList = databaseList; proxyList = dropdown.getProxies(step.ServerName, AgentSubSystem.TransactSql); ViewBag.ProxyList = proxyList; actionList = dropdown.getActions(step.ServerName, step.JobID, step.StepNo); ViewBag.ActionList = actionList; ViewBag.ServerName = step.ServerName; ViewBag.JobID = step.JobID; return(View(step)); } }
public async Task <List <JobStepModel> > GetJobSteps(List <Guid> messageIds) { return(await JobSteps.Where(step => messageIds.Contains(step.MessageId)).ToListAsync()); }
public async Task SaveJobSteps(List <JobStepModel> jobSteps) { JobSteps.AddRange(jobSteps.Where(step => step.Id == 0)); await SaveChangesAsync(); }