//Cloudogu EcoSystem Docs

Richtlinien für die Behandlung von Fehlern im Baseline Tool

Dieses Dokument beschreibt das Vorgehen, wie spezifische Fehlermeldungen in Baseline abgebildet werden.

1. Struct WithCode dient als Kommunikationsmedium

WithCode ist ein eigener Fehlertyp (struct) und wird innerhalb vom Baseline-Backend verwendet, um im Fehlerfall Informationen bis zu dem Endanwender zu kommunizieren. Dabei ist auf die Formulierung und Struktur der vorhandenen Fehler und ihren Fehlercodes und -texten zu achten. Alle Fehlercodes sind in der Datei errorMessages.go im Paket customerror zu finden. Dort befindet sich ebenfalls die Funktion WriteErrorWithCode, über welches der WithCode-Error ausgewertet und als Response ans Frontend gegeben wird. In dieser Funktion werden die Fehlercodes sowie ggf. in die Fehlermeldungen einzufügende Variablen (z.B. der Name einer Baseline oder der name einer Datei) der Response hinzugefügt. Das Frontend kann diese dann auswerten.

2. Behandlung der Fehler im Frontend

Jeder Teil des Frontends, welcher sich um das Handling dieser Fehler kümmert, geht auf zwei verschiedene Arten damit um.

  1. Es wird probiert, ob in der Übersetzungsdatei eine Übersetzung des Fehlers namens specific_backend_errors.<Fehlercode> definiert wurde. Sollte das der Fall sein, so wird diese Übersetzung des Fehlers genommen und ggf. vorhandene Variablen, die vom Backend übermittelt wurden, werden mit eingefügt.
  2. Sollte diese Übersetzung nicht vorhanden sein, wird eine Fallback-Fehlermeldung zurückgegeben.

Um diese Logik abzubilden, wurde die Funktion errorMessage(options: {error: ErrorWithCode,fallbackMsgKey: string}) geschaffen.