class HackerOne::Client::Incremental::Activities
Attributes
page_size[R]
program[R]
updated_at_after[R]
Public Class Methods
new(program, updated_at_after: nil, page_size: 25)
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 11 def initialize(program, updated_at_after: nil, page_size: 25) @program = program @updated_at_after = updated_at_after @page_size = page_size end
Public Instance Methods
activities()
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 27 def activities @activities ||= current_page[:data].map do |activity_json| HackerOne::Client::Activities.build activity_json end end
next_page()
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 33 def next_page return nil unless next_cursor.present? # Set cursor to next page @updated_at_after = next_cursor # Remove memoization @current_page = nil @activities = nil # Fetch new page current_page activities end
traverse() { |activity| ... }
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 17 def traverse loop do activities.each do |activity| yield activity end break if next_page.nil? end end
Private Instance Methods
current_page()
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 51 def current_page @current_page ||= make_get_request( "incremental/activities", extract_data: false, params: { handle: program.handle, first: page_size, updated_at_after: updated_at_after } ) end
next_cursor()
click to toggle source
# File lib/hackerone/client/incremental/activities.rb, line 63 def next_cursor current_page[:meta][:max_updated_at] end