Example #1
0
        public static int Main(string[] args)
        {
            try
            {
                log4net.Config.XmlConfigurator.Configure();
                AppUtilityLib.AppUtility utility = new AppUtilityLib.AppUtility();
                QuartzServiceInstaller.ServiceName       = utility.GetSetting("ServiceName", "QuartzService");
                QuartzServiceInstaller.QuartzServiceType = typeof(QuartzService);

                if (args.Length == 0)
                {
                    QuartzProgram <Program> .ServiceMain(args);

                    return(0);
                }
                else
                {
                    return(ReflectCmdArgs(args));
                }
            }
            catch (Exception ex)
            {
                new Program().Logger.Error(ex);
                return(-1);
            }
        }
Example #2
0
        public JsonResult GetLogFiles()
        {
            QuartzScheduler context = new QuartzScheduler(quartzJobStoreSettings.QuartzConnectionString);

            var list = QuartzProgram <AdminController> .GetJobHistory().Select(s => s.LOGFILE).Distinct().ToArray();

            return(Json(list, JsonRequestBehavior.AllowGet));
        }
 public HttpResponseMessage GetJobDisplayFolderPath(string JobName)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, QuartzProgram <AdminController> .GetJobDetail(JobName, "", "", "").FirstOrDefault().JobDataMap["DisplayFolder"], Configuration.Formatters.JsonFormatter));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to GetTriggerDisplayFolderPath due to {ex.ToString()}"));
     }
 }
 public HttpResponseMessage SearchJobDetail([FromBody] TriggerCriteria triggerCriteria)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, QuartzProgram <AdminController> .GetJobDetail(triggerCriteria.JobName, triggerCriteria.TriggerName, triggerCriteria.JobGroup, triggerCriteria.TriggerGroup)));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to SearchJobDetail due to {ex.ToString()}"));
     }
 }
 public HttpResponseMessage ChangeJobWithCronExpression([FromBody] CronScheduleCriteria cronScheduleCriteria)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, QuartzProgram <AdminController> .RunJobWithCronExpression(cronScheduleCriteria.JobName, cronScheduleCriteria.CronExpression, cronScheduleCriteria.TriggerName, cronScheduleCriteria.TriggerGroup, true)));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to ChangeJobWithCronExpression due to {ex.ToString()}"));
     }
 }
 public HttpResponseMessage RunJobNow([FromBody] JobCriteria jobCriteria)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, QuartzProgram <AdminController> .RunJobNow(jobCriteria.JobName, jobCriteria.JobGroup)));
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to RunJobNow due to {ex.ToString()}"));
     }
 }
        public HttpResponseMessage PauseTriggers([FromBody] TriggerCriteria triggerCriteria)
        {
            try
            {
                QuartzProgram <AdminController> .PauseTriggers(triggerCriteria.JobName, triggerCriteria?.TriggerName, triggerCriteria.JobGroup, triggerCriteria?.TriggerGroup);

                return(Request.CreateResponse(HttpStatusCode.OK, $"Successfully Paused Triggers"));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to Pause Triggers due to {ex.ToString()}"));
            }
        }
 public HttpResponseMessage AddJobDetailsFromAssemblyClass(string AssemblyName, string ClassName)
 {
     try
     {
         Type[] jobTypes = QuartzService.Program.GetJobTypes().Where(jt => jt.Name == ClassName && jt.Assembly.GetName().Name == AssemblyName).ToArray();
         if (jobTypes == null || jobTypes.Count() == 0)
         {
             throw new Exception($"{ClassName} does not appear to be a valid PayrollReporting JobType");
         }
         QuartzProgram <AdminController> .AddJobDetailsFromTypes(jobTypes, false);
     }catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to add {ClassName} due to {ex.ToString()}"));
     }
     return(Request.CreateResponse(HttpStatusCode.OK, $"Successfully Added {ClassName}"));
 }
        public HttpResponseMessage SendEmail([FromBody] EmailRequest request)
        {
            try
            {
                Dictionary <string, string> JobData = new Dictionary <string, string>();
                JobData.Add("From", request.From);
                JobData.Add("To", request.To);
                JobData.Add("Body", request.Body);
                JobData.Add("IsHtml", request.IsHtml.ToString());
                JobData.Add("Subject", request.Subject);
                JobData.Add("FilePaths", request.FilePaths);

                ITrigger Schedule = QuartzProgram <AdminController> .ScheduleCustomJobType(typeof(EmailJob), request.JobName, request.JobGroup, request.TriggerName, request.TriggerGroup, request.RequestDate, JobData, false);

                return(Request.CreateResponse(HttpStatusCode.OK, Schedule));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to SendEmail due to {ex.ToString()}"));
            }
        }
        public HttpResponseMessage SearchJobHistory([FromBody] JobHistoryCriteria jobHistoryCriteria)
        {
            try
            {
                DateTime?StartDate = null;
                DateTime?EndDate   = null;
                DateTime ParseDate;

                if (DateTime.TryParse(jobHistoryCriteria?.StartDate, out ParseDate))
                {
                    StartDate = ParseDate;
                }
                if (DateTime.TryParse(jobHistoryCriteria?.EndtDate, out ParseDate))
                {
                    EndDate = ParseDate;
                }

                return(Request.CreateResponse(HttpStatusCode.OK, QuartzProgram <AdminController> .GetJobHistory(jobHistoryCriteria?.JobName, jobHistoryCriteria?.TriggerName, StartDate, EndDate, jobHistoryCriteria?.JobGroup, jobHistoryCriteria?.TriggerGroup)));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, $"Failed to Search Job History due to {ex.ToString()}"));
            }
        }