class Octaccord::Command::Comments
Public Class Methods
new(client, repos, since, before)
click to toggle source
# File lib/octaccord/command/comments.rb, line 5 def initialize(client, repos, since, before) begin comments = client.issues_comments(repos, :since => since) issues = gather_issues(comments, before) issues.each do |uri, comments| next if comments.empty? issue = comments.first.rels[:issue].get.data print format_issue(issue) comments.each do |comment| print format_comment(comment) end end print "\n" rescue Octokit::ClientError => e STDERR.puts "Error: ##{issue} -- #{e.message.split(' // ').first}" end end
Private Instance Methods
format_comment(comment)
click to toggle source
# File lib/octaccord/command/comments.rb, line 38 def format_comment(comment) comment = Formatter::Comment.new(comment) " * #{comment.summary} #{comment.link(text: "...")}\n" end
format_issue(issue)
click to toggle source
# File lib/octaccord/command/comments.rb, line 43 def format_issue(issue) issue = Formatter::Issue.new(issue) return "* #{issue.link} #{issue.status} #{issue.title}\n" end
gather_issues(comments, before)
click to toggle source
# File lib/octaccord/command/comments.rb, line 26 def gather_issues(comments, before) issues = {} comments.each do |comment| next if comment.updated_at > before uri = comment.rels[:issue].href issues[uri] ||= [] issues[uri] << comment end return issues end