diff --git a/src/downloader/full_run_service_factory.py b/src/downloader/full_run_service_factory.py index 4f208bc..4ba8f4a 100644 --- a/src/downloader/full_run_service_factory.py +++ b/src/downloader/full_run_service_factory.py @@ -32,7 +32,7 @@ from downloader.job_system import JobSystem from downloader.jobs.fetch_file_worker import SafeFileFetcher from downloader.jobs.reporters import DownloaderProgressReporter, FileDownloadProgressReporter, InstallationReportImpl -from downloader.jobs.worker_context import make_downloader_worker_context +from downloader.jobs.worker_context import DownloaderWorkerContext from downloader.logger import DebugOnlyLoggerDecorator, Logger, FilelogManager, PrintLogManager, FileLoggerDecorator, \ PrintLogger from downloader.os_utils import LinuxOsUtils @@ -92,7 +92,7 @@ def create(self, config: Config): free_space_reservation = LinuxFreeSpaceReservation(logger=self._logger, config=config) if system_file_system.is_file(FILE_MiSTer_version) else UnlimitedFreeSpaceReservation() linux_updater = LinuxUpdater(self._logger, config, system_file_system, safe_file_fetcher) - workers_ctx = make_downloader_worker_context( + workers_ctx = DownloaderWorkerContext( job_ctx=job_system, waiter=waiter, logger=self._logger, diff --git a/src/downloader/jobs/open_db_worker.py b/src/downloader/jobs/open_db_worker.py index c9cb065..a93ed0c 100644 --- a/src/downloader/jobs/open_db_worker.py +++ b/src/downloader/jobs/open_db_worker.py @@ -16,8 +16,7 @@ # You can download the latest version of this tool from: # https://github.com/MiSTer-devel/Downloader_MiSTer -from downloader.db_entity import DbEntity, DbEntityValidationException, make_db_tag -from downloader.file_system import FsError +from downloader.db_entity import DbEntity, make_db_tag from downloader.job_system import WorkerResult from downloader.jobs.open_db_job import OpenDbJob from downloader.jobs.process_db_job import ProcessDbJob diff --git a/src/downloader/jobs/open_zip_contents_worker.py b/src/downloader/jobs/open_zip_contents_worker.py index 029f601..203c757 100644 --- a/src/downloader/jobs/open_zip_contents_worker.py +++ b/src/downloader/jobs/open_zip_contents_worker.py @@ -17,7 +17,6 @@ # https://github.com/MiSTer-devel/Downloader_MiSTer import os -from typing import List from downloader.job_system import WorkerResult from downloader.jobs.index import Index diff --git a/src/downloader/jobs/validate_file_worker.py b/src/downloader/jobs/validate_file_worker.py index bbb6985..4c176f9 100644 --- a/src/downloader/jobs/validate_file_worker.py +++ b/src/downloader/jobs/validate_file_worker.py @@ -17,7 +17,6 @@ # https://github.com/MiSTer-devel/Downloader_MiSTer from typing import Optional -from pathlib import Path from downloader.file_system import FileSystem from downloader.job_system import WorkerResult, ProgressReporter diff --git a/src/downloader/jobs/worker_context.py b/src/downloader/jobs/worker_context.py index df66995..9cfca8a 100644 --- a/src/downloader/jobs/worker_context.py +++ b/src/downloader/jobs/worker_context.py @@ -53,7 +53,7 @@ class DownloaderWorkerContext: file_filter_factory: FileFilterFactory target_paths_calculator_factory: TargetPathsCalculatorFactory config: Config - fail_policy: DownloaderWorkerFailPolicy + fail_policy: DownloaderWorkerFailPolicy = DownloaderWorkerFailPolicy.FAULT_TOLERANT def swallow_error(self, e: Exception, print: bool = True): if self.fail_policy == DownloaderWorkerFailPolicy.FAIL_FAST: @@ -61,38 +61,6 @@ def swallow_error(self, e: Exception, print: bool = True): self.logger.debug(e) if print: self.logger.print(f"ERROR: {e}") -def make_downloader_worker_context( - job_ctx: JobContext, - http_gateway: HttpGateway, - logger: Logger, - file_system: FileSystem, - waiter: Waiter, - progress_reporter: ProgressReporter, - file_download_session_logger: FileDownloadSessionLogger, - installation_report: InstallationReportImpl, - free_space_reservation: FreeSpaceReservation, - external_drives_repository: ExternalDrivesRepository, - file_filter_factory: FileFilterFactory, - target_paths_calculator_factory: TargetPathsCalculatorFactory, - config: Config, - fail_policy: DownloaderWorkerFailPolicy = DownloaderWorkerFailPolicy.FAULT_TOLERANT - ) -> DownloaderWorkerContext: - return DownloaderWorkerContext( - job_ctx=job_ctx, - http_gateway=http_gateway, - logger=logger, - file_system=file_system, - waiter=waiter, - progress_reporter=progress_reporter, - file_download_session_logger=file_download_session_logger, - installation_report=installation_report, - free_space_reservation=free_space_reservation, - external_drives_repository=external_drives_repository, - file_filter_factory=file_filter_factory, - target_paths_calculator_factory=target_paths_calculator_factory, - config=config, - fail_policy=fail_policy - ) class DownloaderWorker(Worker): @abstractmethod diff --git a/src/test/fake_online_importer.py b/src/test/fake_online_importer.py index d9837dc..c396b5c 100644 --- a/src/test/fake_online_importer.py +++ b/src/test/fake_online_importer.py @@ -27,7 +27,7 @@ from downloader.job_system import Job, JobFailPolicy, JobSystem from downloader.jobs.process_db_job import ProcessDbJob from downloader.jobs.reporters import FileDownloadProgressReporter, InstallationReportImpl, InstallationReport -from downloader.jobs.worker_context import DownloaderWorker, DownloaderWorkerFailPolicy, make_downloader_worker_context +from downloader.jobs.worker_context import DownloaderWorker, DownloaderWorkerFailPolicy, DownloaderWorkerContext from downloader.local_store_wrapper import StoreWrapper from downloader.online_importer import InstallationBox, OnlineImporter as ProductionOnlineImporter from downloader.target_path_calculator import TargetPathsCalculatorFactory @@ -78,7 +78,7 @@ def __init__( self._report_tracker = ProgressReporterTracker(self._file_download_reporter) self._job_system = JobSystem(self._report_tracker, logger=logger, max_threads=1, fail_policy=JobFailPolicy.FAIL_FAST, max_timeout=1) external_drives_repository = ExternalDrivesRepository(file_system=self.file_system) - self._worker_ctx = make_downloader_worker_context( + self._worker_ctx = DownloaderWorkerContext( job_ctx=self._job_system, waiter=waiter, logger=logger,