/** * @see java.util.Iterator#hasNext() */ @Override public boolean hasNext() { // Special case: initial page will always have data return initialPage || connection.hasNext(); }
/** * @see java.util.Iterator#next() */ @Override public List<T> next() { // Special case: initial page will always have data, return it // immediately. if (initialPage) { initialPage = false; return connection.getData(); } if (!connection.hasNext()) { throw new NoSuchElementException("There are no more pages in the connection."); } connection = connection.fetchNextPage(); return connection.getData(); }