VesselGenerator.kt 657 Bytes
package application.model

import java.io.File

fun createVesselCollection(file: File) : MutableMap<Int?, Vessel> {
    val messages : ArrayList<Message> = arrayListOf()
    val vessels: MutableMap<Int?, Vessel> = mutableMapOf()

    file.forEachLine {
        val arrayMessage = it.split(",")
        if (arrayMessage[0].toIntOrNull() !== null) {
            val message = Message(arrayMessage)
            messages.add(message)
            if (!vessels.containsKey(message.mmsi)){
                vessels[message.mmsi] = Vessel()
            }
            vessels[message.mmsi]?.messages?.set(message.time, message)
        }

    }

    return vessels
}