@Override protected Iterator<Trip> iterator() { return feed.trips.values().iterator(); }
@Override protected Iterator<StopTime> iterator() { return feed.stop_times.values().iterator(); }
@Override protected Iterator<CalendarDate> iterator() { Iterator<Service> serviceIterator = feed.services.values().iterator(); return Iterators.concat(Iterators.transform(serviceIterator, new Function<Service, Iterator<CalendarDate>> () { @Override public Iterator<CalendarDate> apply(Service service) { return service.calendar_dates.values().iterator(); } })); } }
public LocalDate getCalendarServiceRangeStart() { int startDate = 0; for (Service service : services.values()) { if (service.calendar == null) continue; if (startDate == 0 || service.calendar.start_date < startDate) { startDate = service.calendar.start_date; } } if (startDate == 0) return null; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd", Locale.getDefault()); return LocalDate.parse(String.valueOf(startDate), formatter); }
public LocalDate getCalendarServiceRangeEnd() { int endDate = 0; for (Service service : services.values()) { if (service.calendar == null) continue; if (endDate == 0 || service.calendar.end_date > endDate) { endDate = service.calendar.end_date; } } if (endDate == 0) return null; DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd", Locale.getDefault()); return LocalDate.parse(String.valueOf(endDate), formatter); }
public LocalDate getCalendarDateStart() { LocalDate startDate = null; for (Service service : services.values()) { for (LocalDate date : service.calendar_dates.keySet()) { if (startDate == null || date.isBefore(startDate)) startDate = date; } } return startDate; }
@Override protected Iterator<Calendar> iterator() { // wrap an iterator over services Iterator<Calendar> calIt = Iterators.transform(feed.services.values().iterator(), new Function<Service, Calendar> () { @Override public Calendar apply (Service s) { return s.calendar; } }); // not every service has a calendar (e.g. TriMet has no calendars, just calendar dates). // This is legal GTFS, so skip services with no calendar return Iterators.filter(calIt, new Predicate<Calendar> () { @Override public boolean apply(Calendar c) { return c != null; } }); } }
public LocalDate getCalendarDateEnd() { LocalDate endDate = null; for (Service service : services.values()) { for (LocalDate date : service.calendar_dates.keySet()) { if (endDate == null || date.isAfter(endDate)) endDate = date; } } return endDate; }
Transfers(GTFSFeed feed) { this.transfersToStop = feed.transfers.values().stream().collect(Collectors.groupingBy(t -> t.to_stop_id)); this.transfersFromStop = feed.transfers.values().stream().collect(Collectors.groupingBy(t -> t.from_stop_id)); this.routesByStop = feed.stop_times.values().stream() .collect(Collectors.groupingBy(stopTime -> stopTime.stop_id, Collectors.mapping(stopTime -> feed.trips.get(stopTime.trip_id).route_id, Collectors.toSet()))); }
private void createTrips() { HashMultimap<String, Trip> blockTrips = HashMultimap.create(); for (Trip trip : feed.trips.values()) { if (trip.block_id != null) { blockTrips.put(trip.block_id, trip);
@Override protected Iterator<Trip> iterator() { return feed.trips.values().iterator(); }
public static Integer getTripCount(GTFSFeed feed, String agencyId) { int count = 0; for (Trip trip : feed.trips.values()) { Route route = feed.routes.get(trip.route_id); if (agencyId.equals(route.agency_id)) { count++; } } return count; }
@Override protected Iterator<CalendarDate> iterator() { Iterator<Service> serviceIterator = feed.services.values().iterator(); return Iterators.concat(Iterators.transform(serviceIterator, new Function<Service, Iterator<CalendarDate>> () { @Override public Iterator<CalendarDate> apply(Service service) { return service.calendar_dates.values().iterator(); } })); } }
public static LocalDate getCalendarServiceRangeEnd(GTFSFeed feed, String agencyId) { int endDate = 0; for (Service service : feed.services.values()) { // if (agencyId.equals(service.agency_id)) { // if (endDate == 0 // || service.calendar.end_date > endDate) // endDate = service.calendar.end_date; // } } DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); return LocalDate.parse(String.valueOf(endDate), formatter); }
public static LocalDate getCalendarServiceRangeStart(GTFSFeed feed, String agencyId) { int startDate = 0; for (Service service : feed.services.values()) { // if (agencyId.equals(service.agency_id)) { // if (startDate == 0 // || service.calendar.start_date < startDate) // startDate = service.calendar.start_date; // } } DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); return LocalDate.parse(String.valueOf(startDate), formatter); }
public LocalDate getCalendarDateEnd() { LocalDate endDate = null; for (Service service : feed.services.values()) { for (LocalDate date : service.calendar_dates.keySet()) { if (endDate == null || date.isAfter(endDate)) endDate = date; } } return endDate; }
public LocalDate getCalendarDateStart() { LocalDate startDate = null; for (Service service : feed.services.values()) { for (LocalDate date : service.calendar_dates.keySet()) { if (startDate == null || date.isBefore(startDate)) startDate = date; } } return startDate; }
public static Integer getStopTimesCount(GTFSFeed feed, String agencyId) { int count = 0; for (StopTime stopTime : feed.stop_times.values()) { Trip trip = feed.trips.get(stopTime.trip_id); Route route = feed.routes.get(trip.route_id); if (agencyId.equals(route.agency_id)) { count++; } } return count; }
public static LocalDate getCalendarDateStart(GTFSFeed feed, String agencyId) { LocalDate startDate = null; for (Service service : feed.services.values()) { for (LocalDate date : service.calendar_dates.keySet()) { // if (agencyId.equals(serviceCalendarDate.getServiceId().getAgencyId())) { if (startDate == null || date.isBefore(startDate)) startDate = date; // } } } return startDate; }
@Override public List<Map<String, Object>> getAllItems(final String tableName) { final BTreeMap<?, byte[]> table = mapDB.treeMap(tableName) .valueSerializer(Serializer.BYTE_ARRAY) .open(); final Stream<Map<String, Object>> valueStream = table.values().stream().map(valueMapper()); return valueStream.collect(Collectors.toList()); }