コード例 #1
0
ファイル: Program.cs プロジェクト: redrhino/autoMT4
        private static void SetScheduledJobs(QuartzServer server, IList<Type> implementedJobs)
        {
            var jobConfigDetailsRepository = new Repository<JobConfigurationDetails>();
            foreach (var implementedJob in implementedJobs)
            {
                var jobConfiguration = jobConfigDetailsRepository.GetAll().FirstOrDefault(x => x.Name == implementedJob.Name);
                if (jobConfiguration != null)
                {
                    IJobDetail job = JobBuilder.Create(implementedJob).WithIdentity(implementedJob.Name, "group1").Build();
                    ITrigger trigger = TriggerBuilder.Create()
                        .WithIdentity(implementedJob.Name + "trigger", "group1")
                        .StartNow()
                        .WithSimpleSchedule(x => x
                                                     .WithIntervalInSeconds((int)jobConfiguration.TriggerTimeInSec)
                                                     .RepeatForever())
                        .Build();

                    server.Scheduler.ScheduleJob(job, trigger);
                }
                else
                {
                    _log.DebugFormat("Job was not configured in db. JobName={0}", implementedJob.Name);
                }
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: redrhino/autoMT4
 static void Main(string[] args)
 {
     log4net.Config.XmlConfigurator.Configure();
     _log.DebugFormat("Program was started");
     var server = new QuartzServer();
     server.Initialize();
     var implementedJobs = new JobProvider().GetImplementedJobsTypes();
     SetScheduledJobs(server, implementedJobs);
 }