Class: TimetrapHarvest::Harvester

Inherits:
Object
  • Object
show all
Defined in:
lib/timetrap_harvest/harvester.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(results, client) ⇒ Harvester

Returns a new instance of Harvester.



4
5
6
7
# File 'lib/timetrap_harvest/harvester.rb', line 4

def initialize(results, client)
  @results = results
  @client  = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



2
3
4
# File 'lib/timetrap_harvest/harvester.rb', line 2

def client
  @client
end

#resultsObject (readonly)

Returns the value of attribute results.



2
3
4
# File 'lib/timetrap_harvest/harvester.rb', line 2

def results
  @results
end

Instance Method Details

#failedObject



27
28
29
# File 'lib/timetrap_harvest/harvester.rb', line 27

def failed
  @failed ||= []
end

#harvestObject



9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/timetrap_harvest/harvester.rb', line 9

def harvest
  results.each do |result|
    if result.key? :error
      failed << result
    else
      client.post(result)

       << result
    end
  end

  { submitted: , failed: failed }
end

#submittedObject



23
24
25
# File 'lib/timetrap_harvest/harvester.rb', line 23

def 
  @submitted ||= []
end