1
0
Fork 0
mirror of synced 2024-10-01 09:47:29 +13:00
Rare/rare/utils/models.py
Stelios Tsampas 148cf0ff8e Add models for the download queue.
The addition of download_only option broke the download queue
due to different positional arguments and tuple indices. Since
using indices is awkward, models to represent the download
and each item in the queue itself were added.
2021-05-25 23:52:25 +03:00

33 lines
1.1 KiB
Python

import os
class InstallOptionsModel:
def __init__(self, app_name: str, path: str = os.path.expanduser("~/legendary"),
max_workers: int = os.cpu_count() * 2, repair: bool = False, dl_only: bool = False,
ignore_free_space: bool = False, force: bool = False, sdl_list: list = ['']
):
self.app_name = app_name
self.path = path
self.max_workers = max_workers
self.repair = repair
self.dl_only = dl_only
self.ignore_free_space = ignore_free_space
self.force = force
self.sdl_list = sdl_list
class InstallDownloadModel:
def __init__(self, dlmanager, analysis, game, igame, repair: bool = False, repair_file: str = None):
self.dlmanager = dlmanager
self.analysis = analysis
self.game = game
self.igame = igame
self.repair = repair
self.repair_file = repair_file
class InstallQueueItemModel:
def __init__(self, queue, download: InstallDownloadModel, options: InstallOptionsModel):
self.queue = queue
self.download = download
self.options = options