Class: Comet::RetentionRange
- Inherits:
-
Object
- Object
- Comet::RetentionRange
- Defined in:
- lib/comet/models/retention_range.rb
Overview
the notes on the RETENTIONRANGE_ constants.
Instance Attribute Summary collapse
-
#days ⇒ Object
Returns the value of attribute days.
-
#jobs ⇒ Object
Returns the value of attribute jobs.
-
#month_offset ⇒ Object
1: 1st, 31: 31st Prior to Comet version 23.6.2, 31 was treated as 30.
-
#months ⇒ Object
Returns the value of attribute months.
-
#timestamp ⇒ Object
Unix timestamp, in seconds.
-
#type ⇒ Object
One of the RETENTIONRANGE_ constants.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
-
#week_offset ⇒ Object
0: Sunday, 6: Saturday.
-
#weeks ⇒ Object
Returns the value of attribute weeks.
-
#year_offset ⇒ Object
Returns the value of attribute year_offset.
-
#years ⇒ Object
Returns the value of attribute years.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ RetentionRange
constructor
A new instance of RetentionRange.
-
#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 ⇒ RetentionRange
Returns a new instance of RetentionRange.
57 58 59 |
# File 'lib/comet/models/retention_range.rb', line 57 def initialize clear end |
Instance Attribute Details
#days ⇒ Object
Returns the value of attribute days.
29 30 31 |
# File 'lib/comet/models/retention_range.rb', line 29 def days @days end |
#jobs ⇒ Object
Returns the value of attribute jobs.
26 27 28 |
# File 'lib/comet/models/retention_range.rb', line 26 def jobs @jobs end |
#month_offset ⇒ Object
1: 1st, 31: 31st Prior to Comet version 23.6.2, 31 was treated as 30. For months that do not have a day equal to the specified offset, no backup will be retained. For example, if the offset is set to 30, no backup will be kept for February.
49 50 51 |
# File 'lib/comet/models/retention_range.rb', line 49 def month_offset @month_offset end |
#months ⇒ Object
Returns the value of attribute months.
35 36 37 |
# File 'lib/comet/models/retention_range.rb', line 35 def months @months end |
#timestamp ⇒ Object
Unix timestamp, in seconds. Used by RETENTIONRANGE_NEWER_THAN_X.
23 24 25 |
# File 'lib/comet/models/retention_range.rb', line 23 def end |
#type ⇒ Object
One of the RETENTIONRANGE_ constants
19 20 21 |
# File 'lib/comet/models/retention_range.rb', line 19 def type @type end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
55 56 57 |
# File 'lib/comet/models/retention_range.rb', line 55 def unknown_json_fields @unknown_json_fields end |
#week_offset ⇒ Object
0: Sunday, 6: Saturday
42 43 44 |
# File 'lib/comet/models/retention_range.rb', line 42 def week_offset @week_offset end |
#weeks ⇒ Object
Returns the value of attribute weeks.
32 33 34 |
# File 'lib/comet/models/retention_range.rb', line 32 def weeks @weeks end |
#year_offset ⇒ Object
Returns the value of attribute year_offset.
52 53 54 |
# File 'lib/comet/models/retention_range.rb', line 52 def year_offset @year_offset end |
#years ⇒ Object
Returns the value of attribute years.
38 39 40 |
# File 'lib/comet/models/retention_range.rb', line 38 def years @years end |
Instance Method Details
#clear ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/comet/models/retention_range.rb', line 61 def clear @type = 0 = 0 @jobs = 0 @days = 0 @weeks = 0 @months = 0 @years = 0 @week_offset = 0 @month_offset = 0 @year_offset = 0 @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/comet/models/retention_range.rb', line 83 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 'Type' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @type = v when 'Timestamp' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric = v when 'Jobs' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @jobs = v when 'Days' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @days = v when 'Weeks' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @weeks = v when 'Months' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @months = v when 'Years' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @years = v when 'WeekOffset' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @week_offset = v when 'MonthOffset' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @month_offset = v when 'YearOffset' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @year_offset = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
76 77 78 79 80 |
# File 'lib/comet/models/retention_range.rb', line 76 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.
154 155 156 |
# File 'lib/comet/models/retention_range.rb', line 154 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 |
# File 'lib/comet/models/retention_range.rb', line 135 def to_hash ret = {} ret['Type'] = @type ret['Timestamp'] = ret['Jobs'] = @jobs ret['Days'] = @days ret['Weeks'] = @weeks ret['Months'] = @months ret['Years'] = @years ret['WeekOffset'] = @week_offset ret['MonthOffset'] = @month_offset ret['YearOffset'] = @year_offset @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.
159 160 161 |
# File 'lib/comet/models/retention_range.rb', line 159 def to_json( = {}) to_hash.to_json() end |