class Device
Public Instance Methods
getKeys()
click to toggle source
# File lib/stf/model/device.rb, line 6 def getKeys getKeysNextLevel('', self) end
getValue(key)
click to toggle source
# File lib/stf/model/device.rb, line 2 def getValue(key) getValueFromObject(self, key) end
Private Instance Methods
concat(prefix, key)
click to toggle source
# File lib/stf/model/device.rb, line 22 def concat(prefix, key) prefix.to_s.empty? ? key : prefix + '.' + key end
getKeysNextLevel(prefix, o)
click to toggle source
# File lib/stf/model/device.rb, line 10 def getKeysNextLevel(prefix, o) return [] if o.nil? o.each_pair.flat_map do |k, v| if v.is_a? OpenStruct getKeysNextLevel(concat(prefix, k.to_s), v) else [concat(prefix, k.to_s)] end end end
getValueFromObject(obj, key)
click to toggle source
# File lib/stf/model/device.rb, line 27 def getValueFromObject(obj, key) keys = key.split('.', 2) if keys[1].nil? obj[key] else getValueFromObject(obj[keys[0]], keys[1]) end end