@Override public T next() { if (pos >= result.getResult().size() && result.getHasMore()) { result = execute.next(cursor.getId()); pos = 0; } if (!hasNext()) { throw new NoSuchElementException(); } return deserialize(result.getResult().get(pos++), cursor.getType()); }