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);
FrequencyInstanceBean bean = new FrequencyInstanceBean();
bean.setTripId(AgencyAndIdLibrary.convertToString(tripId));
bean.setServiceDate(sti.getServiceDate());
bean.setStartTime(sti.getServiceDate()
+ sti.getFrequency().getStartTime() * 1000);
bean.setEndTime(sti.getServiceDate() + sti.getFrequency().getEndTime()
* 1000);
bean.setHeadwaySecs(sti.getFrequency().getHeadwaySecs());
bean.setServiceId(AgencyAndIdLibrary.convertToString(serviceId));
bean.setArrivalEnabled(blockStopTime.getBlockSequence() > 0);
bean.setDepartureEnabled(blockStopTime.getBlockSequence() + 1 < blockConfig.getStopTimes().size());
String directionId = trip.getDirectionId();
if (directionId == null)
directionId = "0";
StopTimeByDirectionEntry stopTimesForDirection = stopTimesByDirection.get(directionId);
stopTimesForDirection.addEntry(bean, narrative.getTripHeadsign());
}
for (StopTimeByDirectionEntry stopTimesForDirection : stopTimesByDirection.values()) {
StopRouteDirectionScheduleBean directionBean = new StopRouteDirectionScheduleBean();