Class: Senju::Comment
- Inherits:
-
Object
- Object
- Senju::Comment
- Defined in:
- lib/senju/comment.rb
Instance Attribute Summary collapse
-
#raw ⇒ Object
readonly
Returns the value of attribute raw.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
Instance Method Summary collapse
-
#initialize(raw, type) ⇒ Comment
constructor
A new instance of Comment.
- #method_missing(method, *args, &block) ⇒ Object
- #no ⇒ Object
- #owner ⇒ Object
- #url ⇒ Object
Constructor Details
#initialize(raw, type) ⇒ Comment
Returns a new instance of Comment.
3 4 5 6 |
# File 'lib/senju/comment.rb', line 3 def initialize(raw, type) @raw = raw @type = type end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method, *args, &block) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/senju/comment.rb', line 8 def method_missing(method, *args, &block) case type when "github" then @raw[method] when "gitlab" then @raw.send(method) end end |
Instance Attribute Details
#raw ⇒ Object (readonly)
Returns the value of attribute raw.
2 3 4 |
# File 'lib/senju/comment.rb', line 2 def raw @raw end |
#type ⇒ Object (readonly)
Returns the value of attribute type.
2 3 4 |
# File 'lib/senju/comment.rb', line 2 def type @type end |
Instance Method Details
#no ⇒ Object
15 16 17 18 19 20 |
# File 'lib/senju/comment.rb', line 15 def no case type when "github" then @raw["number"] when "gitlab" then @raw.iid end end |
#owner ⇒ Object
22 23 24 25 26 27 |
# File 'lib/senju/comment.rb', line 22 def owner case type when "github" then @raw["user"]["login"] when "gitlab" then @raw..username end end |
#url ⇒ Object
29 30 31 32 33 34 |
# File 'lib/senju/comment.rb', line 29 def url case type when "github" then @raw["html_url"] when "gitlab" then @raw.web_url end end |