Class: Github::Client::Repos::Collaborators
- Defined in:
- lib/github_api/client/repos/collaborators.rb
Constant Summary
Constants included from MimeType
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
Instance Method Summary collapse
-
#add(*args) ⇒ Object
(also: #<<)
Add collaborator.
-
#collaborator?(*args) ⇒ Boolean
Checks if user is a collaborator for a given repository.
-
#list(*args) ⇒ Array
(also: #all)
List collaborators.
-
#remove(*args) ⇒ Object
Removes collaborator.
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, root!, #run_callbacks, #set, #yield_or_eval
Methods included from Github::ClassMethods
#configuration, #configure, #require_all
Methods included from RateLimit
#ratelimit, #ratelimit_remaining, #ratelimit_reset
Methods included from Request::Verbs
#delete_request, #get_request, #head_request, #options_request, #patch_request, #post_request, #put_request
Methods included from MimeType
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
#add(*args) ⇒ Object Also known as: <<
Add collaborator
43 44 45 46 47 |
# File 'lib/github_api/client/repos/collaborators.rb', line 43 def add(*args) arguments(args, required: [:user, :repo, :username]) put_request("/repos/#{arguments.user}/#{arguments.repo}/collaborators/#{arguments.username}", arguments.params) end |
#collaborator?(*args) ⇒ Boolean
Checks if user is a collaborator for a given repository
61 62 63 64 65 66 67 68 |
# File 'lib/github_api/client/repos/collaborators.rb', line 61 def collaborator?(*args) arguments(args, required: [:user, :repo, :username]) get_request("/repos/#{arguments.user}/#{arguments.repo}/collaborators/#{arguments.username}", arguments.params) true rescue Github::Error::NotFound false end |
#list(*args) ⇒ Array Also known as: all
List collaborators
When authenticating as an organization owner of an organization-owned repository, all organization owners are included in the list of collaborators. Otherwise, only users with access to the repository are returned in the collaborators list.
22 23 24 25 26 27 28 29 |
# File 'lib/github_api/client/repos/collaborators.rb', line 22 def list(*args) arguments(args, required: [:user, :repo]) params = arguments.params response = get_request("/repos/#{arguments.user}/#{arguments.repo}/collaborators", arguments.params) return response unless block_given? response.each { |el| yield el } end |
#remove(*args) ⇒ Object
Removes collaborator
77 78 79 80 81 |
# File 'lib/github_api/client/repos/collaborators.rb', line 77 def remove(*args) arguments(args, required: [:user, :repo, :username]) delete_request("/repos/#{arguments.user}/#{arguments.repo}/collaborators/#{arguments.username}", arguments.params) end |