Zum Inhalt

TestFlightPlanService.Load

Eigenschaft Wert
Modul Forms
Klasse TestFlightPlanService
Typ Function
Sichtbarkeit Public
Datei Forms/TestFlightPlanService.vb

Beschreibung

Liest die Datei test-fpln.json aus dem Anwendungsverzeichnis und deserialisiert sie zu einem TestFlightPlanDto. Gibt Nothing zurueck, wenn die Datei nicht existiert. Deserialisierungsfehler (z.B. fehlerhaftes JSON oder inkompatibles Schema) werden nicht intern behandelt, sondern an den Aufrufer weitergereicht. Das zurueckgegebene DTO enthaelt den vollstaendigen Raw-Flugplan sowie alle Kernel-State-Felder, die fuer die Trajectory-Neuberechnung erforderlich sind.

Signatur

Public Function Load() As TestFlightPlanDto

Parameter

Keine Parameter.

Rueckgabewert

Typ Beschreibung
TestFlightPlanDto Das deserialisierte DTO mit Flugplan und Kernel-State-Feldern, oder Nothing wenn die Datei nicht existiert

Ablaufdiagramm

flowchart TD
    A[Start] --> B[GetFilePath aufrufen]
    B --> C{Datei existiert?}
    C -->|Nein| D[Nothing zurueckgeben]
    C -->|Ja| E[File.ReadAllText lesen]
    E --> F[JsonSerializer.Deserialize aufrufen]
    F --> G[TestFlightPlanDto zurueckgeben]
    D --> H[Ende]
    G --> H

Aufgerufen von

Modul Sub/Function Kontext
frmRawFpln mnuLoadTest_Click Test-Menue "Load Test FPLN" — laedt den gespeicherten Flugplan und pusht ihn an FlightPlanActor und KernelActor

Ruft auf

Modul Sub/Function Kontext
TestFlightPlanService GetFilePath Ermittelt den absoluten Dateipfad
File Exists Prueft ob die test-fpln.json Datei vorhanden ist
File ReadAllText Liest den gesamten JSON-Inhalt der Datei
JsonSerializer Deserialize Deserialisiert den JSON-String in ein TestFlightPlanDto

Beispiel

' Test-Flugplan laden und pruefen
Dim dto = TestFlightPlanService.Load()
If dto Is Nothing Then
    lblStatus.Text = $"Keine Testdatei unter {TestFlightPlanService.GetFilePath()}"
    Return
End If
' dto.FlightPlan, dto.CostIndex, dto.CrzAltFt etc. verwenden

Aenderungshistorie

Version Datum Aenderung
1.0 2026-04-16 Erstdokumentation