Class: Comet::JobEntry
- Inherits:
-
Object
- Object
- Comet::JobEntry
- Defined in:
- lib/comet/models/job_entry.rb
Overview
JobEntry is a typed class wrapper around the underlying Comet Server API data structure. JobEntry is a single entry within a job report.
Instance Attribute Summary collapse
-
#message ⇒ Object
Returns the value of attribute message.
-
#severity ⇒ Object
One of the SEVERITY_ constants.
-
#time ⇒ Object
Unix timestamp in seconds.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ JobEntry
constructor
A new instance of JobEntry.
-
#to_h ⇒ Hash
The complete object as a Ruby hash.
-
#to_hash ⇒ Hash
The complete object as a Ruby hash.
-
#to_json(options = {}) ⇒ String
The complete object as a JSON string.
Constructor Details
#initialize ⇒ JobEntry
Returns a new instance of JobEntry.
30 31 32 |
# File 'lib/comet/models/job_entry.rb', line 30 def initialize clear end |
Instance Attribute Details
#message ⇒ Object
Returns the value of attribute message.
25 26 27 |
# File 'lib/comet/models/job_entry.rb', line 25 def @message end |
#severity ⇒ Object
One of the SEVERITY_ constants.
22 23 24 |
# File 'lib/comet/models/job_entry.rb', line 22 def severity @severity end |
#time ⇒ Object
Unix timestamp in seconds
18 19 20 |
# File 'lib/comet/models/job_entry.rb', line 18 def time @time end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
28 29 30 |
# File 'lib/comet/models/job_entry.rb', line 28 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
34 35 36 37 38 39 |
# File 'lib/comet/models/job_entry.rb', line 34 def clear @time = 0 @severity = '' @message = '' @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/comet/models/job_entry.rb', line 49 def from_hash(obj) raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash obj.each do |k, v| case k when 'Time' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @time = v when 'Severity' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @severity = v when 'Message' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @message = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
42 43 44 45 46 |
# File 'lib/comet/models/job_entry.rb', line 42 def from_json(json_string) raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String from_hash(JSON.parse(json_string)) end |
#to_h ⇒ Hash
Returns The complete object as a Ruby hash.
85 86 87 |
# File 'lib/comet/models/job_entry.rb', line 85 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
73 74 75 76 77 78 79 80 81 82 |
# File 'lib/comet/models/job_entry.rb', line 73 def to_hash ret = {} ret['Time'] = @time ret['Severity'] = @severity ret['Message'] = @message @unknown_json_fields.each do |k, v| ret[k] = v end ret end |
#to_json(options = {}) ⇒ String
Returns The complete object as a JSON string.
90 91 92 |
# File 'lib/comet/models/job_entry.rb', line 90 def to_json( = {}) to_hash.to_json() end |