Class: Gitlab::Audit::NullAuthor
- Inherits:
-
Object
- Object
- Gitlab::Audit::NullAuthor
- Defined in:
- lib/gitlab/audit/null_author.rb
Direct Known Subclasses
CiRunnerTokenAuthor, DeletedAuthor, DeployKeyAuthor, DeployTokenAuthor, UnauthenticatedAuthor
Instance Attribute Summary collapse
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
Class Method Summary collapse
-
.for(id, audit_event) ⇒ Gitlab::Audit::UnauthenticatedAuthor, ...
Creates an Author.
Instance Method Summary collapse
- #current_sign_in_ip ⇒ Object
- #full_path ⇒ Object
-
#initialize(id:, name:) ⇒ NullAuthor
constructor
A new instance of NullAuthor.
Constructor Details
#initialize(id:, name:) ⇒ NullAuthor
Returns a new instance of NullAuthor.
34 35 36 37 |
# File 'lib/gitlab/audit/null_author.rb', line 34 def initialize(id:, name:) @id = id @name = name end |
Instance Attribute Details
#id ⇒ Object (readonly)
Returns the value of attribute id.
6 7 8 |
# File 'lib/gitlab/audit/null_author.rb', line 6 def id @id end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
6 7 8 |
# File 'lib/gitlab/audit/null_author.rb', line 6 def name @name end |
Class Method Details
.for(id, audit_event) ⇒ Gitlab::Audit::UnauthenticatedAuthor, ...
Creates an Author
While tracking events that could take place even when a user is not logged in, (eg: downloading repo of a public project), we set the author_id of such events as -1
rubocop: disable Layout/LineLength
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/gitlab/audit/null_author.rb', line 18 def self.for(id, audit_event) name = audit_event[:author_name] || audit_event.details[:author_name] if audit_event.target_type == ::Ci::Runner.name Gitlab::Audit::CiRunnerTokenAuthor.new(audit_event) elsif id == -1 Gitlab::Audit::UnauthenticatedAuthor.new(name: name) elsif id == -2 Gitlab::Audit::DeployTokenAuthor.new(name: name) elsif id == -3 Gitlab::Audit::DeployKeyAuthor.new(name: name) else Gitlab::Audit::DeletedAuthor.new(id: id, name: name) end end |
Instance Method Details
#current_sign_in_ip ⇒ Object
39 40 41 |
# File 'lib/gitlab/audit/null_author.rb', line 39 def current_sign_in_ip nil end |
#full_path ⇒ Object
43 44 45 |
# File 'lib/gitlab/audit/null_author.rb', line 43 def full_path nil end |