Exemple #1
0
        /// <summary>
        /// Called by the worker thread.
        /// </summary>
        public override void Execute(JobContext pContext, iEventRecorder pEventRecorder)
        {
            EmailSettings settings = (EmailSettings)pContext.PluginSettings;

/*
            IEnumerable<iJobReport> jobReports = from jobID in _jobService.getJobIDs()
                                                 select _jobService.getJobReport(jobID, true);

            IEnumerable<IGrouping<string, iJobReport>> plugins = from report in jobReports
                                                                 group report by report.Plugin
                                                                 into plugin
                                                                 select plugin;

            Report.Report data = new Report.Report(from plugin in plugins
                                                   select new Plugin(
                                                       plugin.Key,
                                                       from job in plugin
                                                       select new Job(
                                                           job.Name,
                                                           from t in job.Tasks
                                                           select new Report.Task(
                                                               t.Name,
                                                               from e in t.EventRecorder.getEvents()
                                                               select new Event(e.Message)
                                                               )
                                                           )
                                                       ));
*/

/*
            Dictionary<string, List<Dictionary<string, object>>> data = new Dictionary<string, List<Dictionary<string, object>>>();
            data.Add("Reports", new List<Dictionary<string, object>>());
            data["Reports"].Add(new Dictionary<string, object>());
            data["Reports"][0].Add("title", "This is a title");
            data["Reports"][0].Add("summary", "This is a summary");
*/

            DataReport report = new DataReport(new[]{"Name","When","Value"}) {Title = "This is a title", Summary = "This is a summary"};
            report.Tables[0].Add(new[] {"Mathew", "10/10/10", "1203"});

            DataReports reports = new DataReports();
            reports.Reports.Add(report);

            StringWriter outWriter = new StringWriter();
            _template.Render(reports, outWriter, null, null);

            string output = _markdown.Transform(outWriter.ToString());

            MailAddress from = new MailAddress(settings.AdminEmail, settings.AdminName);

            _emailService.Start(from, from, settings.Subject, null, output);
            foreach (MailAddress who in _mailingList.getMailingList())
            {
                _emailService.To(who);
            }
            _emailService.Send();
        }
Exemple #2
0
 /// <summary>
 /// Called by the worker thread.
 /// </summary>
 public void Execute(JobContext pContext, iEventRecorder pEventRecorder)
 {
     Thread.Sleep(5000);
 }
Exemple #3
0
 /// <summary>
 /// Called by the worker thread.
 /// </summary>
 public abstract void Execute(JobContext pContext, iEventRecorder pEventRecorder);