class Github::Issues::Comments

Constants

VALID_ISSUE_COMMENT_PARAM_NAME

Public Instance Methods

all(*args)
Alias for: list
create(*args) click to toggle source

Create a comment

Inputs

<tt>:body</tt> Required string

Examples

github = Github.new
github.issues.comments.create 'user-name', 'repo-name', 'issue-id',
   'body': 'a new comment'
# File lib/github_api/issues/comments.rb, line 70
def create(*args)
  arguments(args, :required => [:user, :repo, :issue_id]) do
    sift VALID_ISSUE_COMMENT_PARAM_NAME
    assert_required %w[ body ]
  end
  params = arguments.params

  post_request("/repos/#{user}/#{repo}/issues/#{issue_id}/comments", params)
end
delete(*args) click to toggle source

Delete a comment

Examples

github = Github.new
github.issues.comments.delete 'user-name', 'repo-name', 'comment-id'
# File lib/github_api/issues/comments.rb, line 106
def delete(*args)
  arguments(args, :required => [:user, :repo, :comment_id])
  params = arguments.params

  delete_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
end
edit(*args) click to toggle source

Edit a comment

Inputs

<tt>:body</tt> Required string

Examples

github = Github.new
github.issues.comments.edit 'user-name', 'repo-name', 'comment-id',
   'body': 'a new comment'
# File lib/github_api/issues/comments.rb, line 90
def edit(*args)
  arguments(args, :required => [:user, :repo, :comment_id]) do
    sift VALID_ISSUE_COMMENT_PARAM_NAME
    assert_required %w[ body ]
  end
  params = arguments.params

  patch_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
end
find(*args)
Alias for: get
get(*args) click to toggle source

Get a single comment

Examples

github = Github.new
github.issues.comments.find 'user-name', 'repo-name', 'comment-id'
# File lib/github_api/issues/comments.rb, line 52
def get(*args)
  arguments(args, :required => [:user, :repo, :comment_id])
  params = arguments.params

  get_request("/repos/#{user}/#{repo}/issues/comments/#{comment_id}", params)
end
Also aliased as: find
list(*args) { |el| ... } click to toggle source

List comments on an issue

Examples

github = Github.new
github.issues.comments.all 'user-name', 'repo-name', issue_id: 'id'
github.issues.comments.all 'user-name', 'repo-name', issue_id: 'id' {|com| .. }

List comments in a repository

Parameters

  • :sort - Optional string, created or updated

  • :direction - Optional string, asc or desc.

    Ignored with sort parameter.
  • :since - Optional string of a timestamp in ISO 8601

    format: YYYY-MM-DDTHH:MM:SSZ

Examples

github = Github.new
github.issues.comments.all 'user-name', 'repo-name'
github.issues.comments.all 'user-name', 'repo-name' {|com| .. }
# File lib/github_api/issues/comments.rb, line 32
def list(*args)
  arguments(args, :required => [:user, :repo])
  params = arguments.params

  response = if (issue_id = params.delete('issue_id'))
    get_request("/repos/#{user}/#{repo}/issues/#{issue_id}/comments", params)
  else
    get_request("/repos/#{user}/#{repo}/issues/comments", params)
  end
  return response unless block_given?
  response.each { |el| yield el }
end
Also aliased as: all