@Override
  public Iterable<TimelineRecord> getLastRecords(int maxResults) {
    SortedSet<TimelineRecord> result = new TreeSet<>();

    UnitOfWork uow = module.currentUnitOfWork();
    String schedulesName = SchedulerMixin.getSchedulesIdentity(scheduler);
    Schedules schedules = uow.get(Schedules.class, schedulesName);
    for (Schedule schedule : schedules.schedules()) {
      Timeline timeline = (Timeline) schedule;
      Iterable<TimelineRecord> lastRecords = timeline.getLastRecords(maxResults);
      Iterables.addAll(result, lastRecords);
    }
    return Iterables.limit(maxResults, Iterables.reverse(result));
  }