class ExistClient::Tasks
Public Instance Methods
report()
click to toggle source
# File lib/exist_client/tasks.rb, line 5 def report ExistClient.log "Reporting completed tasks" completed_tasks = plugin.completed_tasks(report_period, data_path).map { |task_data| Task.new(task_data) } grouped_tasks = filter_tasks(completed_tasks).group_by(&:logical_date) if grouped_tasks.any? ExistClient.log "Found data for the following dates:", indent: 1 ExistClient.log grouped_tasks.keys.sort.map { |date| date.strftime("%-m/%-d") }.join(", "), indent: 1 else ExistClient.log "No new data found", indent: 1 return end values = grouped_tasks.map do |date, tasks| { name: "tasks_completed", date: date.to_s, value: tasks.size } end ExistClient.log "Reporting completed tasks data...", indent: 1 ExistClient.post(values) end
Private Instance Methods
filter_tasks(tasks)
click to toggle source
# File lib/exist_client/tasks.rb, line 32 def filter_tasks(tasks) tasks.select { |task| report_period.include?(task.completed_at) } end