Class: Prdigest::Collector

Inherits:
Object
  • Object
show all
Defined in:
lib/prdigest/collector.rb

Instance Method Summary collapse

Constructor Details

#initialize(clock:, github:, repositories:, line_stats: false) ⇒ Collector

Returns a new instance of Collector.



7
8
9
10
11
12
# File 'lib/prdigest/collector.rb', line 7

def initialize(clock:, github:, repositories:, line_stats: false)
  @clock = clock
  @github = github
  @repositories = Array(repositories).map { |repository| repository.to_s.freeze }.freeze
  @line_stats = line_stats == true
end

Instance Method Details

#call(date:) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/prdigest/collector.rb', line 14

def call(date:)
  date = Date.iso8601(date.to_s)
  window = @clock.window(date)
  return empty_digest(date) if window.zero_length?

  @github.fetch(
    date: date,
    window: window,
    repositories: @repositories,
    line_stats: @line_stats
  )
end