List<StopTimeInstance> stopTimesForRoute = stopTimesByRouteCollectionId.get(routeId);
for (StopTimeInstance sti : stopTimesForRoute) {
BlockStopTimeEntry bst = sti.getStopTime();
BlockTripEntry blockTrip = sti.getTrip();
BlockConfigurationEntry blockConfig = blockTrip.getBlockConfiguration();
TripEntry trip = blockTrip.getTrip();
AgencyAndId tripId = trip.getId();
AgencyAndId serviceId = trip.getServiceId().getId();
TripNarrative narrative = _narrativeService.getTripForId(tripId);
StopTimeInstanceBean stiBean = new StopTimeInstanceBean();
stiBean.setTripId(AgencyAndIdLibrary.convertToString(tripId));
stiBean.setServiceDate(sti.getServiceDate());
stiBean.setArrivalTime(sti.getArrivalTime());
stiBean.setDepartureTime(sti.getDepartureTime());
stiBean.setServiceId(AgencyAndIdLibrary.convertToString(serviceId));
stiBean.setArrivalEnabled(bst.getBlockSequence() > 0);
stiBean.setDepartureEnabled(bst.getBlockSequence() + 1 < blockConfig.getStopTimes().size());
String directionId = trip.getDirectionId();
if (directionId == null)
directionId = "0";
String tripHeadsign = narrative.getTripHeadsign();
TripHeadsignStopTimeGroupKey groupKey = new TripHeadsignStopTimeGroupKey(
tripHeadsign);
ContinuesAsStopTimeGroupKey continuesAsGroupKey = getContinuesAsGroupKeyForStopTimeInstance(sti);
StopTimeByDirectionEntry stopTimesForDirection = stopTimesByDirection.get(directionId);
stopTimesForDirection.addEntry(stiBean, tripHeadsign, groupKey,
continuesAsGroupKey);
}
List<StopTimeInstance> frequenciesForRoute = frequenciesByRouteCollectionId.get(routeId);
for (StopTimeInstance sti : frequenciesForRoute) {
BlockStopTimeEntry blockStopTime = sti.getStopTime();
BlockTripEntry blockTrip = blockStopTime.getTrip();
TripEntry trip = blockTrip.getTrip();
BlockConfigurationEntry blockConfig = blockTrip.getBlockConfiguration();
AgencyAndId tripId = trip.getId();
AgencyAndId serviceId = trip.getServiceId().getId();
TripNarrative narrative = _narrativeService.getTripForId(tripId);