Class: Github::Client::Repos::Comments

Inherits:
API
  • Object
show all
Defined in:
lib/github_api/client/repos/comments.rb

Constant Summary collapse

REQUIRED_COMMENT_OPTIONS =
%w[ body ].freeze
VALID_COMMENT_OPTIONS =
%w[
  body
  line
  path
  position
].freeze

Constants included from MimeType

MimeType::MEDIA_LOOKUP

Constants included from Github::Constants

Github::Constants::ACCEPT, Github::Constants::ACCEPTED_OAUTH_SCOPES, Github::Constants::ACCEPT_CHARSET, Github::Constants::CACHE_CONTROL, Github::Constants::CONTENT_LENGTH, Github::Constants::CONTENT_TYPE, Github::Constants::DATE, Github::Constants::ETAG, Github::Constants::HEADER_LAST, Github::Constants::HEADER_LINK, Github::Constants::HEADER_NEXT, Github::Constants::LOCATION, Github::Constants::META_FIRST, Github::Constants::META_LAST, Github::Constants::META_NEXT, Github::Constants::META_PREV, Github::Constants::META_REL, Github::Constants::OAUTH_SCOPES, Github::Constants::PARAM_PAGE, Github::Constants::PARAM_PER_PAGE, Github::Constants::PARAM_START_PAGE, Github::Constants::RATELIMIT_LIMIT, Github::Constants::RATELIMIT_REMAINING, Github::Constants::RATELIMIT_RESET, Github::Constants::SERVER, Github::Constants::USER_AGENT

Instance Attribute Summary

Attributes inherited from API

#current_options

Instance Method Summary collapse

Methods inherited from API

after_callbacks, after_request, #api_methods_in, #arguments, before_callbacks, before_request, clear_request_methods!, #disable_redirects, #execute, extend_with_actions, extra_methods, #extract_basic_auth, extract_class_name, #filter_callbacks, inherited, #initialize, internal_methods, method_added, #method_missing, #module_methods_in, namespace, request_methods, require_all, #respond_to?, root!, #run_callbacks, #set, #yield_or_eval

Methods included from Request::Verbs

#delete_request, #get_request, #head_request, #options_request, #patch_request, #post_request, #put_request

Methods included from RateLimit

#ratelimit, #ratelimit_remaining, #ratelimit_reset

Methods included from MimeType

#lookup_media, #parse

Methods included from Authorization

#auth_code, #authenticated?, #authentication, #authorize_url, #basic_authed?, #client, #get_token

Constructor Details

This class inherits a constructor from Github::API

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Github::API

Instance Method Details

#create(*args) ⇒ Object

Creates a commit comment

Examples:

github = Github.new
github.repos.comments.create 'user-name', 'repo-name', 'sha-key',
  body: "Nice change",
  position: 4,
  line: 1,
  path: "file1.txt"

Parameters:



84
85
86
87
88
89
90
# File 'lib/github_api/client/repos/comments.rb', line 84

def create(*args)
  arguments(args, required: [:user, :repo, :sha]) do
    assert_required REQUIRED_COMMENT_OPTIONS
  end

  post_request("/repos/#{arguments.user}/#{arguments.repo}/commits/#{arguments.sha}/comments", arguments.params)
end

#delete(*args) ⇒ Object

Deletes a commit comment

Examples:

github = Github.new
github.repos.comments.delete 'user-name', 'repo-name', 'id'


119
120
121
122
123
# File 'lib/github_api/client/repos/comments.rb', line 119

def delete(*args)
  arguments(args, required: [:user, :repo, :id])

  delete_request("/repos/#{arguments.user}/#{arguments.repo}/comments/#{arguments.id}", arguments.params)
end

#get(*args) ⇒ Object Also known as: find

Gets a single commit comment

Examples:

github = Github.new
github.repos.comments.get 'user-name', 'repo-name', 'id'


56
57
58
59
60
# File 'lib/github_api/client/repos/comments.rb', line 56

def get(*args)
  arguments(args, required: [:user, :repo, :id])

  get_request("/repos/#{arguments.user}/#{arguments.repo}/comments/#{arguments.id}", arguments.params)
end

#list(*args) ⇒ Object Also known as: all

List commit comments for a repository

List comments for a single commit

Examples:

github = Github.new
github.repos.comments.list 'user-name', 'repo-name'
github.repos.comments.list 'user-name', 'repo-name' { |com| ... }
github.repos.comments.list 'user-name', 'repo-name',
 sha: '6dcb09b5b57875f334f61aebed695e2e4193db5e'


33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/github_api/client/repos/comments.rb', line 33

def list(*args)
  arguments(args, required: [:user, :repo])
  params = arguments.params
  user   = arguments.user
  repo   = arguments.repo

  response = if (sha = params.delete('sha'))
    get_request("/repos/#{user}/#{repo}/commits/#{sha}/comments", params)
  else
    get_request("/repos/#{user}/#{repo}/comments", params)
  end
  return response unless block_given?
  response.each { |el| yield el }
end

#update(*args) ⇒ Object

Update a commit comment

Examples:

github = Github.new
github.repos.comments.update 'user-name', 'repo-name', 'id',
  body: "Nice change"

Parameters:



104
105
106
107
108
109
110
# File 'lib/github_api/client/repos/comments.rb', line 104

def update(*args)
  arguments(args, required: [:user, :repo, :id]) do
    assert_required REQUIRED_COMMENT_OPTIONS
  end

  patch_request("/repos/#{arguments.user}/#{arguments.repo}/comments/#{arguments.id}", arguments.params)
end
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy