2023-10-09 14:23:30 +02:00

32 lines
686 B
Python

import dataclasses
import multiprocessing.connection
import threading
@dataclasses.dataclass
class SharedObjects:
visited_nodes: dict
not_visited_nodes: dict
not_valid_urls: list[dict]
urls_with_error: list[dict]
shutdown_event: threading.Event
watchdog_event: threading.Event
worker_finished: threading.Barrier
job_queue: multiprocessing.Queue
log_queue: multiprocessing.Queue
config: dict
lock: multiprocessing.Lock
def dict(self) -> dict:
return {k: v for k, v in dataclasses.asdict(self).items()}
@dataclasses.dataclass
class Response:
links: set[str]
@dataclasses.dataclass
class ResponseError:
exc: Exception