public virtual IEnumerable<AwpWord> AddWords(DateTime forDate, int deliveryGroupId, int targetNameId, int numberOfWords, int daysToWarm, int postProductionDays, int minEmailCount, int maxEmailCount) { var result = new List<AwpWord>(); OnStart(this, new DataEventArgs<string>(String.Format(ProcessMsg, deliveryGroupId, string.Format("Adding new words to warm for delivery group {0}.", deliveryGroupId)))); try { OnReport(this, new DataEventArgs<string>(string.Format("Adding {0} words for Delivery Group {1}", numberOfWords, deliveryGroupId))); var newWordsToWarm = _wordsProvider.GetWordsToWarm(forDate, deliveryGroupId, targetNameId, numberOfWords, daysToWarm, postProductionDays); result.AddRange(newWordsToWarm); result.ForEach(x => _warmingRepository.Add(x)); OnReport(this, new DataEventArgs<string>(string.Format("Added {0} words for Delivery Group {1}", result.Count(), deliveryGroupId))); } catch (Exception e) { OnError(this, new DataEventArgs<Exception>(e)); } finally { OnEnd(this, new DataEventArgs<string>(String.Format(ProcessMsg, deliveryGroupId, "Adding new words to warm succeeded."))); } return result; }
public JobsRunner ( AwpContext awpContext, IOenRepository oenRepository, IWarmingManager warmingManager, BaseStatsProvider statsProvider) { _awpContext = awpContext; _statsProvider = statsProvider; _oenRepository = oenRepository as OenRepository; _warmingManager = warmingManager as WarmingManager; _warmingManager.OnStart += (s, e) => OnJobEventStart(s, e); _warmingManager.OnEnd += (s, e) => OnJobEventEnd(s, e); _warmingManager.OnError += (s, e) => OnJobEventError(s, e); _warmingManager.OnReport += (s, e) => OnJobEventReport(s, e); _warmingManager.OnProgressReport += (s, e) => { OnStatsReport(s,new DataEventArgs<IEnumerable<StatsResult>>(statsProvider.GetResults(true))); OnJobProgressReport(s, e); }; ProcessesToSkip = new List<string>(); }
public Campaign() { TargetNames = new List<TargetName>(); MonitorMissingHeat = false; }