Esempio n. 1
0
 public override void AddToEngine(RFEngineDefinition engine)
 {
     if (TriggerKey != null)
     {
         engine.AddCatalogUpdateTrigger <RFCatalogKey>(k => k.MatchesRoot(TriggerKey), TaskProcess);
     }
 }
Esempio n. 2
0
        public override void AddToEngine(RFEngineDefinition engine)
        {
            var triggerName = RFEnum.FromString(TaskName);
            var triggerKey  = RFSchedulerTriggerKey.Create(engine.KeyDomain, triggerName);

            engine.AddCatalogUpdateTrigger <RFSchedulerTriggerKey>(k => k.TriggerName.Equals(triggerName), TaskProcess);

            engine.Schedules.Add(c => new RFSchedulerConfig
            {
                Range      = RangeFunc(c),
                Schedules  = SchedulesFunc(c),
                TriggerKey = triggerKey,
                IsEnabled  = c.UserConfig.GetBool(CONFIG_SECTION, TaskName, false, true, "Is Enabled")
            });
        }
Esempio n. 3
0
        public override void AddToEngine(RFEngineDefinition engine)
        {
            var triggerName = RFEnum.FromString(TaskName);
            var triggerKey  = RFSchedulerTriggerKey.Create(engine.KeyDomain, triggerName);

            var scheduler = engine.AddProcess(
                processName: String.Format("Task {0} Scheduler", TaskName),
                description: string.Format("Schedules task {0}", TaskName),
                processor: () => new RFSchedulerProcessor(new RFSchedulerConfig
            {
                Range      = RangeFunc(),
                Schedules  = SchedulesFunc(),
                TriggerKey = triggerKey
            }));

            engine.AddIntervalTrigger(scheduler);
            engine.AddCatalogUpdateTrigger <RFSchedulerTriggerKey>(k => k.TriggerName.Equals(triggerName), TaskProcess);
        }