Exemplo n.º 1
0
        public IHttpActionResult GetTriggerById(long jobId, long triggerId)
        {
            var trigger = this.queryService.GetTriggerById(jobId, triggerId);

            if (trigger == null)
            {
                return(this.NotFound());
            }

            return(this.Ok(TriggerMapper.ConvertToDto((dynamic)trigger)));
        }
Exemplo n.º 2
0
        public IHttpActionResult TriggersByJob(long jobId, int page = 1, int pageSize = 200, bool showDeleted = false)
        {
            var job = this.queryService.GetJobById(jobId);

            var pagedResult = this.queryService.GetTriggersByJobId(jobId, page, pageSize, showDeleted);

            var jobDto = job.ToDto();

            jobDto.Trigger = pagedResult.Items.Select(t => TriggerMapper.ConvertToDto(t as dynamic)).Cast <JobTriggerDtoBase>().ToList();

            return(this.Ok(jobDto));
        }
Exemplo n.º 3
0
        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)));
        }
Exemplo n.º 4
0
        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));
        }