Exemple #1
0
        public Composer(Func <FtpClient> clientFactory, ILogger logger)
        {
            _ftpClientProvider = new FtpClientProvider(clientFactory);
            Logger             = new ClassLogger <T>(logger);

            _contentUpdater = new Lazy <IContentUpdater>(() =>
                                                         new ContentUpdater(ChecksumDataStorage, FtpManager, Logger));
            _differenceGenerator = new Lazy <IDifferenceGenerator>(() =>
                                                                   new DifferenceGenerator(ChecksumDataStorage, FtpDirectoryTreeBuilder, FtpManager, LocalDirectoryTreeBuilder, Logger, TreeComparer));
            _ftpDirectoryTreeBuilder = new Lazy <IFtpDirectoryTreeBuilder>(() =>
                                                                           new FtpDirectoryTreeBuilder(new StorageChecksumProvider(ChecksumDataStorage), FtpManager));
            _ftpManager = new Lazy <IFtpManager>(() =>
                                                 new FtpManager(ChecksumCalculator, ChecksumDataStorage, _ftpClientProvider, Logger));
            _localDirectoryTreeBuilder = new Lazy <ILocalDirectoryTreeBuilder>(() =>
                                                                               new LocalDirectoryTreeBuilder(new LocalChecksumProvider(ChecksumCalculator)));
        }
Exemple #2
0
 public FtpCommandExecutor(IFtpClientProvider ftpClientProvider, IClassLogger logger) =>
 (_ftpClientProvider, _logger) = (ftpClientProvider, logger);
        public FtpManager(IChecksumCalculator checksumCalculator, ChecksumDataStorage checksumDataStorage, IFtpClientProvider ftpClientProvider, IClassLogger logger)
        {
            var ftpExecutor = new FtpCommandExecutor(ftpClientProvider, logger);

            _ftpContentGetter     = new FtpContentGetter(ftpExecutor);
            _ftpDirectoryCreator  = new FtpDirectoryCreator(ftpExecutor);
            _ftpDirectoryRemover  = new FtpDirectoryRemover(ftpExecutor, _ftpContentGetter, _ftpFileRemover, logger);
            _ftpFileUploader      = new FtpFileUploader(checksumCalculator, ftpExecutor, checksumDataStorage);
            _ftpDirectoryUploader = new FtpDirectoryUploader(_ftpDirectoryCreator, _ftpFileUploader, logger);
            _ftpExistenceChecker  = new FtpExistenceChecker(ftpExecutor);
            _ftpFileRemover       = new FtpFileRemover(ftpExecutor);
            _ftpTextReader        = new FtpTextReader(ftpExecutor);
            _ftpTextUploader      = new FtpTextUploader(_ftpFileUploader);
        }