public Program(ProgramArguments args, ILogger logger, IArticleReader reader, IArticleRenderer renderer, IDeCorrespondentResources decorrespondent, ILastDatasource lastDs, IEReaderSender kindle, INotificationSender summarySender, int maxAantalArticles) { this.args = args; this.logger = logger; this.reader = reader; this.renderer = renderer; this.decorrespondent = decorrespondent; this.lastDs = lastDs; this.kindle = kindle; this.summarySender = summarySender; this.maxAantalArticles = maxAantalArticles; }
private static Program Instance(ProgramArguments args, ILogger logger, IDeCorrespondentResources decorrespondent, FileConfig config) { var reader = new ArticleReader(); var renderer = string.IsNullOrEmpty(config.EvoPdfLicenseKey) ? new HtmlArticleRenderer(logger, config.ArticleRendererConfig) : new PdfArticleRenderer(logger, config.ArticleRendererConfig, config.EvoPdfLicenseKey) as IArticleRenderer; var lastIdDs = new FileLastDatasource(); var mailer = new SmtpMailer(logger, config.SmtpMailConfig); var kindle = new KindleEmailSender(logger, config.KindleEmailSenderConfig, mailer); var summarySender = new EmailNotificationSender(logger, mailer, config.EmailNotificationSenderConfig); return new Program(args, logger, reader, renderer, decorrespondent, lastIdDs, kindle, summarySender, config.MaxAantalArticles); }
public ProgramWrapper(LogWrapper logger, WrappedResources resources, IArticleReader articleReader, IArticleRenderer articleRenderer, IDeCorrespondentResources reader, IEReaderSender sender, INotificationSender summarySender, DateTime? last) { this.logger = logger; wrappedResources = resources; LastDs = new MemoryLastDatasource(last); Program = new DeCorrespondent.Program(new DeCorrespondent.Program.ProgramArguments(true), logger, articleReader, articleRenderer, reader, LastDs, sender, summarySender, 20); }