""" sn_basis/modules/pruef_ergebnis.py – Ergebnisobjekt für alle Prüfer. """ from dataclasses import dataclass from pathlib import Path from typing import Any, Optional, Literal # Alle möglichen Aktionen, die ein Prüfer auslösen kann. # Erweiterbar ohne Umbau der Klasse. PruefAktion = Literal[ "ok", "leer", "leereingabe_erlaubt", "leereingabe_nicht_erlaubt", "standarddatei_vorschlagen", "temporaer_erlaubt", "datei_nicht_gefunden", "kein_dateipfad", "pfad_nicht_gefunden", "url_nicht_erreichbar", "netzwerkfehler", "falscher_layertyp", "falscher_geotyp", "layer_leer", "falsches_crs", "felder_fehlen", "datenquelle_unerwartet", "layer_nicht_editierbar", "temporaer_erzeugen", "stil_nicht_anwendbar", "layer_unsichtbar", "layer_nicht_gefunden", "unbekannt", "stil_anwendbar", "falsche_endung", ] @dataclass(slots=True) class pruef_ergebnis: ok: bool meldung: str aktion: PruefAktion kontext: Optional[Any] = None