gitlab-org--gitlab-foss/lib/gitlab/git/user.rb

36 lines
933 B
Ruby
Raw Normal View History

2017-08-22 11:05:36 +00:00
module Gitlab
module Git
2017-09-13 16:16:56 +00:00
class User
attr_reader :username, :name, :email, :gl_id
2017-08-22 14:27:15 +00:00
2017-09-13 16:16:56 +00:00
def self.from_gitlab(gitlab_user)
new(gitlab_user.username, gitlab_user.name, gitlab_user.email, Gitlab::GlId.gl_id(gitlab_user))
2017-09-13 16:16:56 +00:00
end
2017-10-03 16:53:11 +00:00
def self.from_gitaly(gitaly_user)
2017-11-23 10:48:57 +00:00
new(
gitaly_user.gl_username,
Gitlab::EncodingHelper.encode!(gitaly_user.name),
Gitlab::EncodingHelper.encode!(gitaly_user.email),
gitaly_user.gl_id
)
2017-10-03 16:53:11 +00:00
end
def initialize(username, name, email, gl_id)
@username = username
2017-08-22 11:05:36 +00:00
@name = name
@email = email
@gl_id = gl_id
end
def ==(other)
[username, name, email, gl_id] == [other.username, other.name, other.email, other.gl_id]
2017-08-22 11:05:36 +00:00
end
def to_gitaly
2017-11-23 10:48:57 +00:00
Gitaly::User.new(gl_username: username, gl_id: gl_id, name: name.b, email: email.b)
end
2017-08-22 11:05:36 +00:00
end
end
end