예제 #1
0
 public DataPump(IDataPumpProvider dataPumpProvider, IDataFileIterator dataFileIterator,
                 IDataPumpStockDataToDBWriter stockDataToDBWriter, IDataFileLineToStockData lineToStockData,
                 IDataFileDownloader dataFileDownloader, DownloadDirectories downloadDirectories)
 {
     _dataPumpProvider    = dataPumpProvider;
     _dataFileIterator    = dataFileIterator;
     _stockDataToDBWriter = stockDataToDBWriter;
     _lineToStockData     = lineToStockData;
     _dataFileDownloader  = dataFileDownloader;
     _downloadDirectories = downloadDirectories;
 }
예제 #2
0
        public void Init()
        {
            DirectoryUtils.ClearDir(_rootPath, true);
            _downloadDirectories = new DownloadDirectories(_rootPath);
            DownloadUrlPrepator         downloadUrlPrepator         = new DownloadUrlPrepator(_downloadDefinitions);
            DownloadFilePathPreparator  downloadFilePathPreparator  = new DownloadFilePathPreparator(_downloadDefinitions, _downloadDirectories);
            DownloadUnzipPathPreparator downloadUnzipPathPreparator = new DownloadUnzipPathPreparator(_downloadDirectories);
            DownloadFilesQueue          downloadFilesQueue          = new DownloadFilesQueue();
            DownloadPipe downloadPipe = new DownloadPipe(new WebClientFileDownloader(), new SystemFileUnzipper(), downloadFilesQueue);

            _dataFileDownloader = new DataFileDownloader(downloadPipe, downloadFilesQueue, downloadUrlPrepator, downloadFilePathPreparator, downloadUnzipPathPreparator);
        }