private Leg ToLeg(Voyage voyage, TransitEdge first, TransitEdge last)
 {
    return new Leg(voyage, _locatinRepository.Find(new UnLocode(first.From)), 
       first.FromDate,
       _locatinRepository.Find(new UnLocode(last.To)),
       last.ToDate);
 }
 private static TransitEdge ToEdge(Voyage voyage, CarrierMovement movement)
 {
    return new TransitEdge(voyage,
       movement.TransportLeg.DepartureLocation.UnLocode.CodeString,
       movement.TransportLeg.ArrivalLocation.UnLocode.CodeString,
       movement.DepartureTime,
       movement.ArrivalTime);
 }