Skip to content
Snippets Groups Projects
Commit 6418c6f8 authored by Douglas Barbosa Alexandre's avatar Douglas Barbosa Alexandre Committed by Stan Hu
Browse files

Add an endpoint to get the user's repositories

parent e2f7f32a
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -4,9 +4,19 @@ module Bitbucket
@connection = options.fetch(:connection, Connection.new(options))
end
 
def repos
relative_path = "/repositories/#{user.username}"
paginator = Paginator.new(connection, relative_path, :repo)
Collection.new(paginator)
end
def user
parsed_response = connection.get('/user')
Representation::User.new(parsed_response)
@user ||= begin
parsed_response = connection.get('/user')
Representation::User.new(parsed_response)
end
end
 
private
Loading
Loading
module Bitbucket
module Representation
class Repo < Representation::Base
attr_reader :owner, :slug
def initialize(raw)
super(raw)
if full_name && full_name.split('/').size == 2
@owner, @slug = full_name.split('/')
end
end
def clone_url(token = nil)
url = raw['links']['clone'].find { |link| link['name'] == 'https' }.fetch('href')
if token.present?
url.sub(/^[^\@]*/, "https://x-token-auth:#{token}")
else
url
end
end
def description
raw['description']
end
def full_name
raw['full_name']
end
def has_issues?
raw['has_issues']
end
def name
raw['name']
end
def valid?
raw['scm'] == 'git'
end
def visibility_level
if raw['is_private']
Gitlab::VisibilityLevel::PRIVATE
else
Gitlab::VisibilityLevel::PUBLIC
end
end
def to_s
full_name
end
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment