Example #1
0
        //Creates a new Mailbox using the specified soap.smtp:// uri
        public Mailbox( Uri endpoint, SoapSmtpTransportOptions options )
        {
            this._address = SoapSmtpUri.AddressFromUri( endpoint );
            this._endpointUri = endpoint;

            this.Options = options;
        }
        public object Clone( )
        {
            SoapSmtpTransportOptions clone = new SoapSmtpTransportOptions( );

            clone.MailServer = _mailServer;
            clone.MailServerPassword = _mailServerPassword;
            clone.SmtpServer = _smtpServer;

            return clone;
        }
        /// <summary>
        /// Parameterized constructor
        /// </summary>
        public SoapSmtpTransport( XmlNodeList configData )
            : this()
        {
            //Set default transport options, override with config settings if needed.
            _options = new SoapSmtpTransportOptions( );

            //Process any configuration data
            if ( configData != null )
            {
                string value;

                foreach ( XmlNode node in configData )
                {
                    XmlElement child = node as XmlElement;

                    if ( child != null )
                    {
                        switch ( child.LocalName )
                        {
                            case "mailServer":
                                value = child.GetAttribute( "value" );
                                _options.MailServer = value;
                                break;
                            case "mailServerPassword":
                                value = child.GetAttribute( "value" );
                                _options.MailServerPassword = value;
                                break;
                            case "smtpServer":
                                value = child.GetAttribute( "value" );
                                _options.SmtpServer = value;
                                break;
                            case "retrySeconds":
                                value = child.GetAttribute( "value" );
                                _options.RetrySeconds = value;
                                break;
                            default:
                                break;
                        }
                    }
                }
            }
        }