Class: Conjur::Id
- Inherits:
-
Object
- Object
- Conjur::Id
- Defined in:
- lib/conjur/id.rb
Overview
Encapsulates a Conjur id, which consists of account, kind, and identifier.
Instance Attribute Summary collapse
-
#id ⇒ Object
readonly
Returns the value of attribute id.
Instance Method Summary collapse
-
#==(other) ⇒ Object
Defines id equivalence using the string representation.
-
#account ⇒ Object
The organization account, obtained from the first component of the id.
-
#as_json(options = {}) ⇒ String
The id string.
-
#identifier ⇒ Object
The object identifier, obtained from the third component of the id.
-
#initialize(id) ⇒ Id
constructor
A new instance of Id.
-
#kind ⇒ Object
The object kind, obtained from the second component of the id.
-
#to_s ⇒ String
The id string.
-
#to_url_path ⇒ Object
Splits the id into 3 components, and then joins them with a forward-slash
/
.
Constructor Details
#initialize(id) ⇒ Id
Returns a new instance of Id.
27 28 29 |
# File 'lib/conjur/id.rb', line 27 def initialize id @id = id end |
Instance Attribute Details
#id ⇒ Object (readonly)
Returns the value of attribute id.
25 26 27 |
# File 'lib/conjur/id.rb', line 25 def id @id end |
Instance Method Details
#==(other) ⇒ Object
Defines id equivalence using the string representation.
40 41 42 43 44 45 46 |
# File 'lib/conjur/id.rb', line 40 def == other if other.is_a?(String) to_s == other else super end end |
#account ⇒ Object
The organization account, obtained from the first component of the id.
32 |
# File 'lib/conjur/id.rb', line 32 def account; id.split(':', 3)[0]; end |
#as_json(options = {}) ⇒ String
Returns the id string.
49 50 51 |
# File 'lib/conjur/id.rb', line 49 def as_json ={} @id end |
#identifier ⇒ Object
The object identifier, obtained from the third component of the id. The
identifier must be unique within the account
and kind
.
37 |
# File 'lib/conjur/id.rb', line 37 def identifier; id.split(':', 3)[2]; end |
#kind ⇒ Object
The object kind, obtained from the second component of the id.
34 |
# File 'lib/conjur/id.rb', line 34 def kind; id.split(':', 3)[1]; end |
#to_s ⇒ String
Returns the id string.
59 60 61 |
# File 'lib/conjur/id.rb', line 59 def to_s id end |
#to_url_path ⇒ Object
Splits the id into 3 components, and then joins them with a forward-slash /
.
54 55 56 |
# File 'lib/conjur/id.rb', line 54 def to_url_path id.split(':', 3).join('/') end |