@startuml
actor User
participant "Main" as M
participant "BufferedReader" as BR
participant "Passenger" as P
participant "Flight" as F
participant "FileFolder" as FF

User -> M : generatePassengers(csvFile)
activate M

M -> BR : new BufferedReader(new FileReader(csvFile))
activate BR
BR -> BR : readLine() "header skip"
loop for each line in csvFile
    BR -> M : readLine()
    M -> F : getFlight(flightNumber)
    activate F
    F --> M : Flight
    M -> P : new Passenger(details)
    activate P
    P --> M : Passenger
    deactivate P
    M -> F : addPassenger(Passenger)
    deactivate F
    M -> FF : addFile(Passenger)
    activate FF
    deactivate FF
end
BR -> M : close()
deactivate BR
deactivate M
@enduml

