class ForemanInventoryUpload::Generators::JsonStream
Attributes
out[R]
Public Class Methods
new(out)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 5 def initialize(out) @out = out end
Public Instance Methods
array() { || ... }
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 9 def array @out << '[' yield @out << ']' end
array_field(name, last = false, &block)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 33 def array_field(name, last = false, &block) @out << "\"#{name}\": " array(&block) @out << ',' unless last end
comma()
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 21 def comma @out << ', ' end
object() { || ... }
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 15 def object @out << '{' yield @out << '}' end
object_field(name, last = false, &block)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 39 def object_field(name, last = false, &block) @out << "\"#{name}\": " object(&block) @out << ',' unless last end
raw(string)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 25 def raw(string) @out << string end
simple_field(name, value, last = false)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 29 def simple_field(name, value, last = false) @out << "\"#{name}\": #{stringify_value(value)}#{last ? '' : ','}" unless value.nil? end
stringify_value(value)
click to toggle source
# File lib/foreman_inventory_upload/generators/json_stream.rb, line 45 def stringify_value(value) return value if value.is_a?(Integer) return value if value.is_a?(TrueClass) return value if value.is_a?(FalseClass) return value.to_json if value.is_a?(Hash) "\"#{value}\"" end