public IHttpActionResult AddTriggerForJobUniqueName(string uniqueName, [FromBody] JobTriggerDtoBase triggerDto) { var job = this.queryService.GetJobByUniqueName(uniqueName); if (job == null) { return(this.NotFound()); } return(this.AddTrigger(triggerDto, job)); }
public IHttpActionResult AddTriggerForJobId(long jobId, [FromBody] JobTriggerDtoBase triggerDto) { var job = this.queryService.GetJobById(jobId); if (job == null) { return(this.NotFound()); } return(this.AddTrigger(triggerDto, job)); }
internal static IJobTrigger MapCommonValues(JobTriggerDtoBase dto, IJobTrigger trigger) { trigger.Comment = dto.Comment; trigger.IsActive = dto.IsActive; trigger.Parameters = JsonConvert.SerializeObject(dto.Parameters); trigger.UserDisplayName = dto.UserDisplayName; trigger.UserId = dto.UserId; trigger.Deleted = dto.Deleted; return(trigger); }
internal static JobTriggerDtoBase MapCommonValues(IJobTrigger trigger, JobTriggerDtoBase dto) { dto.Id = trigger.Id; dto.Comment = trigger.Comment; dto.IsActive = trigger.IsActive; dto.Parameters = trigger.Parameters != null?JsonConvert.DeserializeObject(trigger.Parameters) : null; dto.UserDisplayName = trigger.UserDisplayName; dto.UserId = trigger.UserId; dto.Deleted = trigger.Deleted; return(dto); }
private IHttpActionResult AddTrigger(JobTriggerDtoBase triggerDto, Job job) { if (triggerDto == null) { return(this.StatusCode(HttpStatusCode.BadRequest)); } if (triggerDto is InstantTriggerDto) { triggerDto.IsActive = true; } var trigger = TriggerMapper.ConvertToTrigger(triggerDto as dynamic); ((IJobTrigger)trigger).JobId = job.Id; this.jobManagementService.AddTrigger(job.Id, trigger); return(this.Created(string.Format("jobs/{0}/triggers/{1}", job.Id, trigger.Id), TriggerMapper.ConvertToDto(trigger))); }
public IHttpActionResult UpdateTrigger(long jobId, long triggerId, [FromBody] JobTriggerDtoBase dto) { var currentTrigger = this.queryService.GetTriggerById(jobId, triggerId); if (currentTrigger == null) { return(this.NotFound()); } if (currentTrigger.IsActive && !dto.IsActive) { currentTrigger.IsActive = false; this.jobManagementService.DisableTrigger(jobId, currentTrigger.Id); } else if (!currentTrigger.IsActive && dto.IsActive) { currentTrigger.IsActive = true; this.jobManagementService.EnableTrigger(jobId, currentTrigger.Id); } if (dto is RecurringTriggerDto recurringTriggerDto) { var trigger = TriggerMapper.ConvertToTrigger(recurringTriggerDto); trigger.Id = triggerId; trigger.JobId = jobId; this.jobManagementService.Update(trigger); } else if (dto is ScheduledTriggerDto scheduledTriggerDto) { var trigger = TriggerMapper.ConvertToTrigger(scheduledTriggerDto); trigger.Id = triggerId; trigger.JobId = jobId; this.jobManagementService.Update(trigger); } return(this.Ok(dto)); }