コード例 #1
0
        public FolderMonitor(IConfigLoader loader, IFileProcessor fileProcessor, IReceiptSender receiptSender, ILogger logger, IDirectoryChecker directoryChecker)
        {
            try
            {
                directoryChecker?.CheckDirectories();
            }
            catch (Exception ex)
            {
                _logger.Log($"{ex.GetType()}:\n{ex.Message}");
                Console.WriteLine($"{ex.GetType()}:\n{ex.Message}");
                throw ex;
            }
            _fileProcessor    = fileProcessor ?? throw new ArgumentNullException(nameof(fileProcessor));
            _config           = loader.Load();
            _watcher          = new FileSystemWatcher(_config.InputFolder);
            _watcher.Created += OnCreatedFile;
            _receiptSender    = receiptSender ?? throw new ArgumentNullException(nameof(receiptSender));
            _logger           = logger ?? throw new ArgumentNullException(nameof(logger));

            //System.IO.Directory.SetCurrentDirectory(System.AppDomain.CurrentDomain.BaseDirectory);
        }
コード例 #2
0
 public CartI(IItemValidator itemValidator, IPaymentExecutor paymentExecutor, IReceiptSender receiptSender)
 {
     this.itemValidator   = itemValidator;
     this.paymentExecutor = paymentExecutor;
     this.receiptSender   = receiptSender;
 }