lib/gitlab/paginated_response.rb in gitlab-4.11.0 vs lib/gitlab/paginated_response.rb in gitlab-4.12.0
- old
+ new
@@ -54,9 +54,28 @@
end
end
response
end
+ def paginate_with_limit(limit)
+ response = block_given? ? nil : []
+ count = 0
+ each_page do |page|
+ if block_given?
+ page.each do |item|
+ yield item
+ count += 1
+ break if count >= limit
+ end
+ else
+ response += page[0, limit - count]
+ count = response.length
+ end
+ break if count >= limit
+ end
+ response
+ end
+
def last_page?
!(@links.nil? || @links.last.nil?)
end
alias has_last_page? last_page?