예제 #1
0
 public void Send()
 {
     if (EmailSource == null)
     {
         throw new NoNullAllowedException("Please set SmtpClient");
     }
     if (MailMessage == null)
     {
         throw new NoNullAllowedException("Please set MailMessage");
     }
     EmailSource.Send(MailMessage);
 }
예제 #2
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            ExecuteMessage     msg        = new ExecuteMessage();
            Dev2JsonSerializer serializer = new Dev2JsonSerializer();

            try
            {
                Dev2Logger.Info("Save Resource Service");
                StringBuilder resourceDefinition;

                values.TryGetValue("EmailServiceSource", out resourceDefinition);

                IEmailServiceSource src = serializer.Deserialize <EmailServiceSourceDefinition>(resourceDefinition);
                EmailSource         con = new EmailSource
                {
                    Host      = src.HostName,
                    UserName  = src.UserName,
                    Password  = src.Password,
                    Port      = src.Port,
                    EnableSsl = src.EnableSsl,
                    Timeout   = src.Timeout
                };
                try
                {
                    con.Send(new MailMessage(src.EmailFrom, src.EmailTo, "Test Email Service Source", "Test message from Warewolf for Email Service Source"));
                }
                catch (SmtpException e)
                {
                    msg.HasError = false;
                    msg.Message  = new StringBuilder(e.Message);
                    return(serializer.SerializeToBuilder(msg));
                    //msg.HasError = true;
                    //msg.Message = new StringBuilder(e.Message);
                }
            }
            catch (Exception err)
            {
                msg.HasError = true;
                msg.Message  = new StringBuilder(err.Message);
                Dev2Logger.Error(err);
            }

            return(serializer.SerializeToBuilder(msg));
        }
예제 #3
0
        public StringBuilder Execute(Dictionary <string, StringBuilder> values, IWorkspace theWorkspace)
        {
            var msg        = new ExecuteMessage();
            var serializer = new Dev2JsonSerializer();

            try
            {
                Dev2Logger.Info("Save Resource Service", GlobalConstants.WarewolfInfo);

                values.TryGetValue("EmailServiceSource", out StringBuilder resourceDefinition);

                IEmailServiceSource src = serializer.Deserialize <EmailServiceSourceDefinition>(resourceDefinition);
                var con = new EmailSource
                {
                    Host      = src.HostName,
                    UserName  = src.UserName,
                    Password  = src.Password,
                    Port      = src.Port,
                    EnableSsl = src.EnableSsl,
                    Timeout   = src.Timeout
                };
                try
                {
                    var mailMessage = new MailMessage(src.EmailFrom, src.EmailTo, Messages.Test_EmailServerSource_Header, Messages.Test_EmailServerSource_EmailBody);
                    con.Send(mailMessage);
                }
                catch (SmtpException e)
                {
                    msg.HasError = true;
                    msg.Message  = new StringBuilder(e.Message);
                    return(serializer.SerializeToBuilder(msg));
                }
            }
            catch (Exception err)
            {
                msg.HasError = true;
                msg.Message  = new StringBuilder(err.Message);
                Dev2Logger.Error(err, GlobalConstants.WarewolfError);
            }

            return(serializer.SerializeToBuilder(msg));
        }
예제 #4
0
        public void EmailSource_Send_ExpectedException()
        {
            var expected = new EmailSource
            {
                Host            = "smtp.mydomain.com",
                Port            = 25,
                EnableSsl       = false,
                UserName        = "******",
                Password        = "******",
                Timeout         = 1000,
                TestFromAddress = "*****@*****.**",
                TestToAddress   = "*****@*****.**"
            };

            var xml = expected.ToXml();

            var mailMessage = new MailMessage();
            var emailSource = new EmailSource(xml);

            emailSource.Send(mailMessage);
        }
예제 #5
0
 public void Send(EmailSource emailSource, MailMessage mailMessage)
 {
     EmailSource = emailSource;
     MailMessage = mailMessage;
     emailSource.Send(mailMessage);
 }
예제 #6
0
 public void Send(EmailSource emailSource, MailMessage mailMessage)
 {
     emailSource.Send(mailMessage);
 }