/// <summary> /// Creates a new <see cref="EmailService"/>. /// </summary> public EmailService(IEmailViewRender emailViewRenderer, IEmailParser emailParser, IOptions <EmailServiceOptions> options, ILogger <EmailService> logger) { this.emailViewRenderer = emailViewRenderer; this.emailParser = emailParser; this.options = options.Value; this.logger = logger; }
/// <summary> /// Creates a new <see cref="EmailViewResult"/>. /// </summary> #if ASPNET5 public EmailViewResult(Email email, IEmailViewRenderer renderer, IEmailParser parser, IServiceProvider serviceProvider, RequestUrl url) { Email = email; Renderer = renderer ?? new EmailViewRenderer(serviceProvider); Parser = parser ?? new EmailParser(Renderer, url); _requestUrl = url; }
public static IEmailParser CreateEmail(ParserContext context) { object obj = CreateObject(context, typeof(IEmailParser), "CreateEmail"); IEmailParser parser = (IEmailParser)obj; return(parser); }
public EmailDataControllerTests() { _emailCleaner = Substitute.For <IEmailCleaner>(); _emailParser = Substitute.For <IEmailParser>(); _totalsCalculator = Substitute.For <ITotalsCalculator>(); _controller = new EmailDataController(_emailParser, _totalsCalculator, _emailCleaner); }
/// <summary> /// Creates a new <see cref="EmailViewResult"/>. /// </summary> #if ASPNET5 public EmailViewResult(Email email, IEmailViewRenderer renderer, IEmailParser parser, IServiceProvider serviceProvider) { var requestFeature = serviceProvider.GetRequiredService <Microsoft.AspNetCore.Http.Features.IHttpRequestFeature>(); Email = email; Renderer = renderer ?? new EmailViewRenderer(serviceProvider); Parser = parser ?? new EmailParser(Renderer, requestFeature); }
public ImapIdleEmailClient( IImapEmailMapper mapper, IEmailParser parser, IPublisherContract publisher, IDispatcher dispatcher) : base(mapper, parser, publisher, dispatcher) { }
/// <summary> /// Renders the email view and builds a <see cref="MailMessage"/>. Does not send the email. /// </summary> /// <param name="email">The email to render.</param> /// <returns>A <see cref="MailMessage"/> containing the rendered email.</returns> public async Task <MailMessage> CreateMailMessageAsync(Email email) { var rawEmailString = await emailViewRenderer.RenderAsync(email); emailParser = new EmailParser(emailViewRenderer); var mailMessage = await emailParser.ParseAsync(rawEmailString, email); return(mailMessage); }
public EmailViewResultExecutor(ILoggerFactory loggerFactory, IHttpResponseStreamWriterFactory httpResponseStreamWriterFactory, IEmailViewRender render, IEmailParser parser = null) { _logger = loggerFactory.CreateLogger <EmailViewResultExecutor>(); _httpResponseStreamWriterFactory = httpResponseStreamWriterFactory; Render = render; Parser = parser ?? new EmailParser(Render); }
public ImapIdleEmailClient( IImapEmailMapper mapper, IEmailParser parser, IPublisherContract publisher) : base(mapper, parser, publisher) { this.baseLogString = $"{this.GetType()} [{this.GetHashCode()}] =>{Environment.NewLine}"; string verboseMessage = $"{baseLogString} entering Ctor."; Logger.LogVerbose(verboseMessage); }
/// <summary> /// Renders the email view and builds a <see cref="MailMessage"/>. Does not send the email. /// </summary> /// <param name="email">The email to render.</param> /// <returns>A <see cref="MailMessage"/> containing the rendered email.</returns> public MailMessage CreateMailMessage(Email email) { #if ASPNET5 var rawEmailString = emailViewRenderer.Render(email, RequestUrl); emailParser = new EmailParser(emailViewRenderer, RequestUrl); #else var rawEmailString = emailViewRenderer.Render(email, request: Request); #endif var mailMessage = emailParser.Parse(rawEmailString, email); return(mailMessage); }
/// <summary> /// Renders the email view and builds a <see cref="MailMessage"/>. Does not send the email. /// </summary> /// <param name="email">The email to render.</param> /// <returns>A <see cref="MailMessage"/> containing the rendered email.</returns> public async Task <MailMessage> CreateMailMessageAsync(Email email) { var rawEmailString = await emailViewRenderer.RenderAsync(email); emailParser = new EmailParser(emailViewRenderer); var mailMessage = await emailParser.ParseAsync(rawEmailString, email); if (mailMessage.From == null || mailMessage.From.Address == null) { mailMessage.From = new MailAddress(this.options.FromAddress); } return(mailMessage); }
public ImapEmailClient(IImapEmailMapper mapper, IEmailParser parser, IPublisherContract publisher, IDispatcher dispatcher) { address = ConfigurationManager.AppSettings["emailAddress"]; password = ConfigurationManager.AppSettings["emailPassword"]; server = ConfigurationManager.AppSettings["emailServer"]; port = Int32.Parse(ConfigurationManager.AppSettings["emailPort"]); this.mapper = mapper; this.parser = parser; this.publisher = publisher; this.dispatcher = dispatcher; client = new ImapClient(server, port, true); }
/// <summary> /// Creates a new <see cref="EmailService"/>. /// </summary> public EmailService(IEmailViewRender emailViewRenderer, IEmailParser emailParser, IOptions <EmailServiceOptions> options, ILogger <EmailService> logger) { this.emailViewRenderer = emailViewRenderer; this.emailParser = emailParser; this.options = options.Value; this.logger = logger; logger.LogDebug($"EmailService options:"); logger.LogDebug($"\tHost: {this.options.Host}"); logger.LogDebug($"\tPort: {this.options.Port}"); logger.LogDebug($"\tEnableSSL: {this.options.EnableSSL}"); logger.LogDebug($"\tFromAddress: {this.options.FromAddress}"); logger.LogDebug($"\tUserName: {this.options.UserName}"); }
public void ReadCnmTest() { string path = TestDataSample.GetCNMPath("Y0B6E8H2.CNM"); ParserContext context = new ParserContext(path); IEmailParser parser = ParserFactory.CreateEmail(context) as IEmailParser; ToxyEmail email = parser.Parse(); Assert.AreEqual(1, email.From.Count); Assert.AreEqual(1, email.To.Count); Assert.AreEqual("Тюльпаны <*****@*****.**>", email.From[0]); Assert.AreEqual("<*****@*****.**>", email.To[0]); Assert.AreEqual("Тюльпаны", email.Subject); Assert.IsTrue(email.Body.StartsWith("Тел: 960-51-57;Продажа тюльпанов")); Assert.IsTrue(email.HtmlBody.StartsWith("<!DOCTYPE HTML")); }
public void Setup() { _clientController = Substitute.For <ITcpClientController>(); _logger = Substitute.For <ILogger>(); _emailParser = Substitute.For <IEmailParser>(); _requestCommandsConverter = Substitute.For <IRequestCommandsConverter>(); _serverStatusCodesConverter = Substitute.For <IServerStatusCodesConverter>(); _clientProcessor = new SmtpServerClientProcessor(_clientController, _logger); _clientProcessor.EmailParser = _emailParser; _clientProcessor.RequestCommandsConverter = _requestCommandsConverter; _clientProcessor.ServerStatusCodesConverter = _serverStatusCodesConverter; _clientController.HostName.Returns(_hostName); }
public void ReadEmlTest() { string path = TestDataSample.GetEmailPath("test.eml"); ParserContext context = new ParserContext(path); IEmailParser parser = ParserFactory.CreateEmail(context); ToxyEmail email = parser.Parse(); Assert.IsNotNullOrEmpty(email.From); Assert.AreEqual(1, email.To.Count); Assert.AreEqual("=?utf-8?B?5ouJ5Yu+572R?= <*****@*****.**>", email.From); Assert.AreEqual("*****@*****.**", email.To[0]); Assert.IsTrue(email.Subject.StartsWith("=?utf-8?B?5LiK5rW35YiG5LyX5b635bOw5bm/5ZGK?= =?utf-8?B?5Lyg5p")); Assert.IsTrue(email.TextBody.StartsWith("------=_Part_4546_1557510524.1418357602217\r\nContent-Type: text")); Assert.IsNull(email.HtmlBody); }
public void ReadEmlTest() { string path = TestDataSample.GetEmailPath("test.eml"); ParserContext context = new ParserContext(path); IEmailParser parser = ParserFactory.CreateEmail(context); ToxyEmail email = parser.Parse(); Assert.IsNotNull(email.From); Assert.IsNotEmpty(email.From); Assert.AreEqual(1, email.To.Count); Assert.AreEqual(email.From, "\u62C9\u52FE\u7F51 <*****@*****.**>"); Assert.AreEqual(email.To[0], "*****@*****.**"); Assert.AreEqual(email.Subject, "\u4E0A\u6D77\u5206\u4F17\u5FB7\u5CF0\u5E7F\u544A\u4F20\u64AD\u6709\u9650\u516C\u53F8-\u9AD8\u7EA7.NET\u8F6F\u4EF6\u5DE5\u7A0B\u5E08\u62DB\u8058\u53CD\u9988\u901A\u77E5"); Assert.IsTrue(email.HtmlBody.StartsWith("<html>\r\n")); Assert.IsNull(email.TextBody); }
public ImapEmailClient(IImapEmailMapper mapper, IEmailParser parser, IPublisherContract publisher) { this.baseLogString = $"{this.GetType()} [{this.GetHashCode()}] =>{Environment.NewLine}"; string verboseMessage = $"{baseLogString} entering Ctor."; Logger.LogVerbose(verboseMessage); address = ConfigurationManager.AppSettings["emailAddress"]; password = ConfigurationManager.AppSettings["emailPassword"]; server = ConfigurationManager.AppSettings["emailServer"]; port = Int32.Parse(ConfigurationManager.AppSettings["emailPort"]); this.mapper = mapper; this.parser = parser; this.publisher = publisher; client = new ImapClient(server, port, true); }
public ImapEmailClient( IImapEmailMapper mapper, IEmailParser parser, IPublisher publisher, IDispatcher dispatcher) { _address = ConfigurationManager.AppSettings["emailAddress"]; _password = ConfigurationManager.AppSettings["emailPassword"]; _server = ConfigurationManager.AppSettings["emailServer"]; _port = Int32.Parse(ConfigurationManager.AppSettings["emailPort"]); _mapper = mapper; _parser = parser; _publisher = publisher; _dispatcher = dispatcher; _client = new ImapClient(_server, _port, true); }
private HttpContext GetHttpContext(IEmailViewRender render, IEmailParser parser = null) { var options = Options.Create(new MvcViewOptions()); var viewExecutor = new EmailViewResultExecutor( NullLoggerFactory.Instance, new TestHttpResponseStreamWriterFactory(), render, parser); var services = new ServiceCollection(); services.AddSingleton <IActionResultExecutor <EmailViewResult> >(viewExecutor); var httpContext = new DefaultHttpContext(); var memoryStream = new MemoryStream(); httpContext.Response.Body = memoryStream; httpContext.RequestServices = services.BuildServiceProvider(); return(httpContext); }
public SimpleEmailService(IEmailViewRenderer emailViewRenderer) { _emailViewRenderer = emailViewRenderer; _simpleEmailService = AWSClientFactory.CreateAmazonSimpleEmailServiceClient(); _emailParser = new EmailParser(emailViewRenderer); }
public SimpleEmailService(IEmailViewRenderer emailViewRenderer, IEmailParser emailParser, AmazonSimpleEmailService amazonSimpleEmailService) { _emailViewRenderer = emailViewRenderer; _simpleEmailService = amazonSimpleEmailService; _emailParser = emailParser; }
/// <summary> /// Creates a new <see cref="EmailViewResult"/>. /// </summary> public EmailViewResult(Email email, IRazorEngineService razorEngineService, IEmailParser parser) { Email = email; this.razorEngineService = razorEngineService; Parser = parser ?? new EmailParser(razorEngineService); }
internal EmailService(IRazorEngineService razorEngineService, Func <SmtpClient> createSmtpClient = null) { this.createSmtpClient = createSmtpClient ?? (() => new SmtpClient()); this.razorEngineService = razorEngineService; this.emailParser = new EmailParser(this.razorEngineService); }
public EmailViewResult(Email email, IEmailViewRenderer renderer, IEmailParser parser) { Email = email; Renderer = renderer ?? new EmailViewRenderer(ViewEngineCollection); Parser = parser ?? new EmailParser(Renderer); }
/// <param name="viewEngines">The view engines to use when creating email views.</param> /// <param name="url">The URL of the current request. This is for the UrlHelper used when generating Urls in a view. When null, this is determined from the current HttpContext instead.</param> /// <param name="createSmtpClient">A function that creates a <see cref="SmtpClient"/>. If null, a default creation function is used.</param> public EmailService(ViewEngineCollection viewEngines, Uri url = null, Func<SmtpClient> createSmtpClient = null) { emailViewRenderer = new EmailViewRenderer(viewEngines, url); emailParser = new EmailParser(emailViewRenderer); this.createSmtpClient = createSmtpClient ?? (() => new SmtpClient()); }
/// <summary> /// Creates a new <see cref="EmailService"/>. /// </summary> public EmailService(IEmailViewRenderer emailViewRenderer, IEmailParser emailParser, Func<SmtpClient> createSmtpClient) { this.emailViewRenderer = emailViewRenderer; this.emailParser = emailParser; this.createSmtpClient = createSmtpClient; }
/// <summary> /// Creates a new <see cref="EmailViewResult"/>. /// </summary> public EmailViewResult(Email email, IEmailViewRenderer renderer, IEmailParser parser) { Email = email; Renderer = renderer ?? new EmailViewRenderer(ViewEngineCollection); Parser = parser ?? new EmailParser(Renderer); }
public void SetUp() { _emailParser = new EmailParser(); }
/// <summary> /// Creates a new <see cref="EmailService"/>. /// </summary> public EmailService(IEmailViewRenderer emailViewRenderer, IEmailParser emailParser, Func <SmtpClient> createSmtpClient) { this.emailViewRenderer = emailViewRenderer; this.emailParser = emailParser; this.createSmtpClient = createSmtpClient; }
public EmailDataController(IEmailParser emailParser, ITotalsCalculator totalsCalculator, IEmailCleaner emailCleaner) { _emailParser = emailParser; _totalsCalculator = totalsCalculator; _emailCleaner = emailCleaner; }
public BookingService(IEmailParser emailParser, ICalculator calculator) { _emailParser = emailParser; _calculator = calculator; }
/// <summary> /// Creates a new <see cref="EmailService"/>. /// </summary> public EmailService(IEmailViewRender emailViewRenderer, IEmailParser emailParser = null, Func <SmtpClient> createSmtpClient = null) { this.emailViewRenderer = emailViewRenderer; this.emailParser = emailParser; this.createSmtpClient = createSmtpClient ?? (() => new SmtpClient()); }