예제 #1
0
        public void ManageJobByCommand(string name, JobCommandEnum jobCommand, string cronExpression = null)
        {
            try {
                var jobs = GetJobs();

                foreach (var job in jobs)
                {
                    if (job.Name() != name)
                    {
                        continue;
                    }

                    _sf        = new StdSchedulerFactory();
                    _scheduler = _sf.GetScheduler();

                    switch (jobCommand)
                    {
                    case JobCommandEnum.Execute:
                        System.Diagnostics.Debug.WriteLine("executing job");
                        job.ExecuteJob();
                        break;

                    case JobCommandEnum.Pause: this.PauseJob(job);
                        break;

                    case JobCommandEnum.Schedule: this.ScheduleJob(job);
                        break;

                    case JobCommandEnum.ChangeCron: this.ChangeCron(job, cronExpression);
                        break;
                    }
                }
            } catch (Exception e) {
                _log.Error("error managing jobs", e);
                throw;
            }
        }
예제 #2
0
        public static String FillSuccessMessage(JobCommandEnum jobCommand)
        {
            var successMessage = "Job ";

            switch (jobCommand)
            {
            case JobCommandEnum.Execute:
                successMessage += Resolver.I18NValue("messagesection.success.job.executed", "successfully executed");
                break;

            case JobCommandEnum.Schedule:
                successMessage += Resolver.I18NValue("messagesection.success.job.scheduled", "successfully scheduled");
                break;

            case JobCommandEnum.Pause:
                successMessage += Resolver.I18NValue("messagesection.success.job.paused", "successfully paused");
                break;

            case JobCommandEnum.ChangeCron:
                successMessage += Resolver.I18NValue("messagesection.success.job.changecron", "cron successfully changed");
                break;
            }
            return(successMessage);
        }
예제 #3
0
        private static GenericResponseResult <List <SchedulerSetupModel> > GetResponse(JobCommandEnum jobCommand)
        {
            var response = new GenericResponseResult <List <SchedulerSetupModel> > {
                ResultObject   = GetMocketList(),
                SuccessMessage = SuccessMessageHandler.FillSuccessMessage(jobCommand)
            };

            return(response);
        }