
org.opentripplanner.gtfs.mapping.TripMapper Maven / Gradle / Ivy
package org.opentripplanner.gtfs.mapping;
import org.opentripplanner.model.Trip;
import org.opentripplanner.util.MapUtils;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
/** Responsible for mapping GTFS TripMapper into the OTP model. */
class TripMapper {
private final RouteMapper routeMapper;
private Map mappedTrips = new HashMap<>();
TripMapper(RouteMapper routeMapper) {
this.routeMapper = routeMapper;
}
Collection map(Collection trips) {
return MapUtils.mapToList(trips, this::map);
}
Trip map(org.onebusaway.gtfs.model.Trip orginal) {
return orginal == null ? null : mappedTrips.computeIfAbsent(orginal, this::doMap);
}
private Trip doMap(org.onebusaway.gtfs.model.Trip rhs) {
Trip lhs = new Trip();
lhs.setId(AgencyAndIdMapper.mapAgencyAndId(rhs.getId()));
lhs.setRoute(routeMapper.map(rhs.getRoute()));
lhs.setServiceId(AgencyAndIdMapper.mapAgencyAndId(rhs.getServiceId()));
lhs.setTripShortName(rhs.getTripShortName());
lhs.setTripHeadsign(rhs.getTripHeadsign());
lhs.setRouteShortName(rhs.getRouteShortName());
lhs.setDirectionId(rhs.getDirectionId());
lhs.setBlockId(rhs.getBlockId());
lhs.setShapeId(AgencyAndIdMapper.mapAgencyAndId(rhs.getShapeId()));
lhs.setWheelchairAccessible(rhs.getWheelchairAccessible());
lhs.setTripBikesAllowed(rhs.getTripBikesAllowed());
lhs.setBikesAllowed(rhs.getBikesAllowed());
lhs.setFareId(rhs.getFareId());
return lhs;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy