Class: Comet::SourceConfig
- Inherits:
-
Object
- Object
- Comet::SourceConfig
- Defined in:
- lib/comet/models/source_config.rb
Overview
SourceConfig is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#create_time ⇒ Object
Returns the value of attribute create_time.
-
#description ⇒ Object
Returns the value of attribute description.
-
#engine ⇒ Object
Returns the value of attribute engine.
-
#engine_props ⇒ Object
Returns the value of attribute engine_props.
-
#modify_time ⇒ Object
Returns the value of attribute modify_time.
-
#override_destination_retention ⇒ Object
Returns the value of attribute override_destination_retention.
-
#owner_device ⇒ Object
Returns the value of attribute owner_device.
-
#post_exec ⇒ Object
Returns the value of attribute post_exec.
-
#pre_exec ⇒ Object
Returns the value of attribute pre_exec.
-
#statistics ⇒ Object
Returns the value of attribute statistics.
-
#thaw_exec ⇒ Object
Returns the value of attribute thaw_exec.
-
#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 ⇒ SourceConfig
constructor
A new instance of SourceConfig.
-
#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 ⇒ SourceConfig
Returns a new instance of SourceConfig.
51 52 53 |
# File 'lib/comet/models/source_config.rb', line 51 def initialize clear end |
Instance Attribute Details
#create_time ⇒ Object
Returns the value of attribute create_time.
25 26 27 |
# File 'lib/comet/models/source_config.rb', line 25 def create_time @create_time end |
#description ⇒ Object
Returns the value of attribute description.
19 20 21 |
# File 'lib/comet/models/source_config.rb', line 19 def description @description end |
#engine ⇒ Object
Returns the value of attribute engine.
16 17 18 |
# File 'lib/comet/models/source_config.rb', line 16 def engine @engine end |
#engine_props ⇒ Object
Returns the value of attribute engine_props.
40 41 42 |
# File 'lib/comet/models/source_config.rb', line 40 def engine_props @engine_props end |
#modify_time ⇒ Object
Returns the value of attribute modify_time.
28 29 30 |
# File 'lib/comet/models/source_config.rb', line 28 def modify_time @modify_time end |
#override_destination_retention ⇒ Object
Returns the value of attribute override_destination_retention.
43 44 45 |
# File 'lib/comet/models/source_config.rb', line 43 def override_destination_retention @override_destination_retention end |
#owner_device ⇒ Object
Returns the value of attribute owner_device.
22 23 24 |
# File 'lib/comet/models/source_config.rb', line 22 def owner_device @owner_device end |
#post_exec ⇒ Object
Returns the value of attribute post_exec.
37 38 39 |
# File 'lib/comet/models/source_config.rb', line 37 def post_exec @post_exec end |
#pre_exec ⇒ Object
Returns the value of attribute pre_exec.
31 32 33 |
# File 'lib/comet/models/source_config.rb', line 31 def pre_exec @pre_exec end |
#statistics ⇒ Object
Returns the value of attribute statistics.
46 47 48 |
# File 'lib/comet/models/source_config.rb', line 46 def statistics @statistics end |
#thaw_exec ⇒ Object
Returns the value of attribute thaw_exec.
34 35 36 |
# File 'lib/comet/models/source_config.rb', line 34 def thaw_exec @thaw_exec end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
49 50 51 |
# File 'lib/comet/models/source_config.rb', line 49 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/comet/models/source_config.rb', line 55 def clear @engine = '' @description = '' @owner_device = '' @create_time = 0 @modify_time = 0 @pre_exec = [] @thaw_exec = [] @post_exec = [] @engine_props = {} @override_destination_retention = {} @statistics = Comet::SourceStatistics.new @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
78 79 80 81 82 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 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 |
# File 'lib/comet/models/source_config.rb', line 78 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 'Engine' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @engine = v when 'Description' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @description = v when 'OwnerDevice' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @owner_device = v when 'CreateTime' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @create_time = v when 'ModifyTime' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @modify_time = v when 'PreExec' if v.nil? @pre_exec = [] else @pre_exec = Array.new(v.length) v.each_with_index do |v1, i1| raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String @pre_exec[i1] = v1 end end when 'ThawExec' if v.nil? @thaw_exec = [] else @thaw_exec = Array.new(v.length) v.each_with_index do |v1, i1| raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String @thaw_exec[i1] = v1 end end when 'PostExec' if v.nil? @post_exec = [] else @post_exec = Array.new(v.length) v.each_with_index do |v1, i1| raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String @post_exec[i1] = v1 end end when 'EngineProps' @engine_props = {} if v.nil? @engine_props = {} else v.each do |k1, v1| raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String @engine_props[k1] = v1 end end when 'OverrideDestinationRetention' @override_destination_retention = {} if v.nil? @override_destination_retention = {} else v.each do |k1, v1| @override_destination_retention[k1] = Comet::RetentionPolicy.new @override_destination_retention[k1].from_hash(v1) end end when 'Statistics' @statistics = Comet::SourceStatistics.new @statistics.from_hash(v) else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
71 72 73 74 75 |
# File 'lib/comet/models/source_config.rb', line 71 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.
191 192 193 |
# File 'lib/comet/models/source_config.rb', line 191 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
# File 'lib/comet/models/source_config.rb', line 167 def to_hash ret = {} ret['Engine'] = @engine ret['Description'] = @description ret['OwnerDevice'] = @owner_device ret['CreateTime'] = @create_time ret['ModifyTime'] = @modify_time ret['PreExec'] = @pre_exec ret['ThawExec'] = @thaw_exec ret['PostExec'] = @post_exec ret['EngineProps'] = @engine_props unless @override_destination_retention.nil? ret['OverrideDestinationRetention'] = @override_destination_retention end unless @statistics.nil? ret['Statistics'] = @statistics end @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.
196 197 198 |
# File 'lib/comet/models/source_config.rb', line 196 def to_json( = {}) to_hash.to_json() end |