class BitbucketServerClient

def paged_request(url, query = {})

def paged_request(url, query = {})
  Enumerator.new do |yielder|
    next_page_start = 0
    loop do
      response = get(url, query.merge(start: next_page_start))
      break if response['values'].nil?
      response['values'].each { |item| yielder << OpenStruct.new(item) }
      next_page_start = response['nextPageStart']
      break unless next_page_start
    end
  end
end