コード例 #1
0
        public DeliveryService(IEmailProvider provider, IDeliveryConfiguration config)
        {
            _provider = provider;
            _config = config;

            _outgoing = new BlockingCollection<EmailMessage>();
            _backlog = new ConcurrentQueue<EmailMessage>();
            _observer = new DeliveryObserver(this);
            _cancel = new CancellationTokenSource();

            _backlogFolder = _config.BacklogFolder ?? "backlog";
            _undeliverableFolder = config.UndeliverableFolder ?? "undeliverable";
            _serializer = new JsonSerializer<EmailMessage>();
            
            if (!Directory.Exists(_backlogFolder))
            {
                Directory.CreateDirectory(_backlogFolder);
            }
            if (!Directory.Exists(_undeliverableFolder))
            {
                Directory.CreateDirectory(_undeliverableFolder);
            }
        }
コード例 #2
0
        public DeliveryService(IEmailProvider provider, IDeliveryConfiguration config)
        {
            _provider = provider;
            _config   = config;

            _outgoing = new BlockingCollection <EmailMessage>();
            _backlog  = new ConcurrentQueue <EmailMessage>();
            _observer = new DeliveryObserver(this);
            _cancel   = new CancellationTokenSource();

            _backlogFolder       = _config.BacklogFolder ?? "backlog";
            _undeliverableFolder = config.UndeliverableFolder ?? "undeliverable";
            _serializer          = new JsonSerializer <EmailMessage>();

            if (!Directory.Exists(_backlogFolder))
            {
                Directory.CreateDirectory(_backlogFolder);
            }
            if (!Directory.Exists(_undeliverableFolder))
            {
                Directory.CreateDirectory(_undeliverableFolder);
            }
        }