Example #1
0
 @Override
 public void flatMap(Flight flight, Collector<Itinerary> out) throws Exception {
   if (flight.getDepartureTimestamp() > TrafficAnalysis.lastPossibleTimestamp
       || flight.getDepartureTimestamp() < TrafficAnalysis.firstPossibleTimestamp) {
     return;
   }
   int numCountries = 2;
   if (CBUtil.isDomestic(flight)) {
     numCountries = 1;
   }
   Date date = new Date(flight.getDepartureTimestamp());
   String dayString = format.format(date);
   Double distance =
       CBUtil.dist(
           flight.getOriginLatitude(),
           flight.getOriginLongitude(),
           flight.getDestinationLatitude(),
           flight.getDestinationLongitude());
   Integer travelTime =
       Math.max(
           (int)
               ((flight.getArrivalTimestamp() - flight.getDepartureTimestamp()) / (60L * 1000L)),
           1);
   out.collect(
       new Itinerary(
           flight.getOriginAirport(),
           flight.getDestinationAirport(),
           dayString,
           flight.getAirline() + flight.getFlightNumber(),
           "",
           "",
           "",
           "",
           distance,
           distance,
           travelTime,
           0,
           flight.getLegCount(),
           0,
           flight.getMaxCapacity(),
           -1.0,
           -1.0,
           -1.0,
           "",
           numCountries,
           "",
           ""));
 }