private void shiftStopTimes(List<StopTime> stopTimes, int time) { for (StopTime stopTime : stopTimes) { if (stopTime.isArrivalTimeSet()) { stopTime.setArrivalTime(stopTime.getArrivalTime() + time); } if (stopTime.isDepartureTimeSet()) { stopTime.setDepartureTime(stopTime.getDepartureTime() + time); } } }
@Override public void run(TransformContext context, GtfsMutableRelationalDao dao) { GtfsReaderContext gtfsReaderContext = context.getReader().getGtfsReaderContext(); Trip trip = getTrip(gtfsReaderContext, dao); List<Stop> stops = getStops(gtfsReaderContext, dao); int[] times = getTimesForStops(stops); for (int i = 0; i < stops.size(); ++i) { StopTime stopTime = new StopTime(); stopTime.setStop(stops.get(i)); stopTime.setStopSequence(i); stopTime.setArrivalTime(times[i]); stopTime.setDepartureTime(times[i]); stopTime.setTrip(trip); dao.saveEntity(stopTime); } }
+ stopTime.getArrivalTime() + " deviation=" + deviation + " for stopTime " + stopTime + " of trip" + trip + " at " + stopTimePosition + "/" + stopTimes.size()); stopTime.setArrivalTime(prev.getDepartureTime()); if (stopTime.getDepartureTime() < stopTime.getArrivalTime()) stopTime.setDepartureTime(stopTime.getArrivalTime());
previousStop.setArrivalTime(0); for (StopTime stopTime : dao.getStopTimesForTrip(trip)) { currentStop = stopTime;
if (prev != null) { if (prev.getStop().getId().equals(stopTime.getStop().getId())) { stopTime.setArrivalTime(Math.min(prev.getArrivalTime(), stopTime.getArrivalTime())); stopTime.setDepartureTime(Math.max(prev.getDepartureTime(),
st.setTrip(sdonAtisTrip); st.setStop(stopTime.getStop()); st.setArrivalTime(stopTime.getArrivalTime()); st.setDepartureTime(stopTime.getDepartureTime()); st.setStopSequence(stopTime.getStopSequence());
if (prev != null) { if (prev.getStop().getId().equals(stopTime.getStop().getId())) { stopTime.setArrivalTime(Math.min(prev.getArrivalTime(), stopTime.getArrivalTime())); stopTime.setDepartureTime(Math.max(prev.getDepartureTime(),
StopTime modified = cloneStopTime(st); if(st.isArrivalTimeSet()) modified.setArrivalTime(st.getArrivalTime() + diff); if(st.isDepartureTimeSet()) modified.setDepartureTime(st.getDepartureTime() + diff);
departureTime = st.getArrivalTime(); } else { st.setArrivalTime(departureTime);
private StopTime cloneStopTime(StopTime original) { StopTime anew = new StopTime(); anew.setTrip(original.getTrip()); anew.setStopSequence(original.getStopSequence()); anew.setStopHeadsign(original.getStopHeadsign()); anew.setStop(original.getStop()); anew.setRouteShortName(original.getRouteShortName()); anew.setPickupType(original.getPickupType()); anew.setId(original.getId()); anew.setDropOffType(original.getDropOffType()); if(original.isShapeDistTraveledSet()) anew.setShapeDistTraveled(original.getShapeDistTraveled()); if(original.isArrivalTimeSet()) anew.setArrivalTime(original.getArrivalTime()); if(original.isDepartureTimeSet()) anew.setDepartureTime(original.getDepartureTime()); return anew; } }