コード例 #1
0
ファイル: QuartzFactory.cs プロジェクト: radtek/HighpinQuartz
        private IList <PlugModel> GetFileModel()
        {
            string runroot = AppDomain.CurrentDomain.BaseDirectory;
            var    subDir  = Directory.GetDirectories(runroot);
            IOConfigurationReader configurationReader = IOConfigurationReader.GetInstance();
            IList <PlugModel>     list = new List <PlugModel>();

            foreach (var item in subDir)
            {
                string    filename     = new DirectoryInfo(item).Name;
                PlugModel model        = new PlugModel();
                string    plugNamepath = Path.Combine(item, string.Concat(filename, "Plug.txt"));
                if (!File.Exists(plugNamepath))
                {
                    continue;
                }
                var plugdic = configurationReader.Read(plugNamepath);
                model.JobName   = plugdic["JOBNAME"];
                model.GroupName = plugdic["GROUPNAME"];
                string CronexPression = string.Empty;
                if (plugdic.TryGetValue("CRONEXPRESSION", out CronexPression))
                {
                    model.CronexPression = CronexPression;
                }
                else
                {
                    model.TimeSpan = int.Parse(plugdic["TIMESPAN"]);
                }
                model.DllRelativeDir = plugdic["JOBNAME"];
                model.DllIQuartzServiceImplementFile = string.Concat(plugdic["JOBNAME"], "QuartzTask.dll");
                list.Add(model);
            }
            return(list);
        }
コード例 #2
0
ファイル: QuartzBuilder.cs プロジェクト: radtek/HighpinQuartz
 internal QuartzBuilder(IQuartzSchedule quartzSchedule)
 {
     this.QuartzSchedule = quartzSchedule;
     configurationReader = IOConfigurationReader.GetInstance();
     ScanQuartzExterior();
 }