Zum Inhalt

FlightPlan.WithOriginDestination

Eigenschaft Wert
Modul FlightPlan
Klasse FlightPlan
Typ Function
Sichtbarkeit Public
Datei FlightPlan/FlightPlanModels.vb

Beschreibung

Erzeugt einen neuen FlightPlan mit aktualisiertem Abflug- und Zielflughafen. Alle Segmente werden geleert, da ein neuer Origin/Destination eine komplett neue Routenfuehrung erfordert. Runway-Bezeichnungen und Prozedurnamen werden zurueckgesetzt, waehrend FlightNumber, CompanyRouteName und Alternate erhalten bleiben.

Signatur

Public Function WithOriginDestination(adep As String, ades As String) As FlightPlan

Parameter

Name Typ Beschreibung Standard
adep String ICAO-Code des Abflughafens (z.B. "EGLL")
ades String ICAO-Code des Zielflughafens (z.B. "KJFK")

Rückgabewert

Typ Beschreibung
FlightPlan Neuer FlightPlan mit gesetztem ADEP/ADES und leeren Segmenten

Ablaufdiagramm

flowchart TD
    A[Start] --> B[Neuen FlightPlan mit adep und ades erstellen]
    B --> C[Alle Runways und Prozedurnamen leeren]
    C --> D[Alle Segmente auf Empty setzen]
    D --> E[Holdings-Dictionary leeren]
    E --> F[FlightNumber und CompanyRouteName beibehalten]
    F --> G[Neuen FlightPlan zurueckgeben]

Aufgerufen von

Modul Sub/Function Kontext
FlightPlanActor Receive(Of SetOriginDestination) Setzt ADEP/ADES ueber Actor-Message
RecordingMapper FlightPlan-Rekonstruktion Replay einer aufgezeichneten Flugroute
Tests Diverse Unit-Tests Testaufbau mit definierten Flughaefen

Ruft auf

Modul Sub/Function Kontext
FlightPlanModels FlightPlan.New (privat) Erzeugt neue immutable FlightPlan-Instanz
FlightPlanModels DepartureSegment.Empty Leeres Departure-Segment
FlightPlanModels EnRouteSegment.Empty Leeres EnRoute-Segment
FlightPlanModels ArrivalSegment.Empty Leeres Arrival-Segment
FlightPlanModels ApproachSegment.Empty Leeres Approach-Segment
FlightPlanModels MissedApproachSegment.Empty Leeres MissedApproach-Segment

Beispiel

Dim plan = FlightPlan.Empty()
Dim updated = plan.WithOriginDestination("EGLL", "KJFK")
' updated.Adep = "EGLL"
' updated.Ades = "KJFK"
' updated.DepartureSegment.Legs.Count = 0
' updated.AdepRunway = "" (zurueckgesetzt)

Änderungshistorie

Version Datum Änderung
1.0 2026-04-16 Erstdokumentation