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); } }
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()}")); } }