module AttributeJsonizer

Public Instance Methods

add_jsonizable_attribute(json_name, jsonizeable_object) click to toggle source
# File lib/blitline/attribute_jsonizer.rb, line 4
def add_jsonizable_attribute(json_name, jsonizeable_object)
  self.class.module_eval { attr_accessor json_name.to_sym}
  self.send("#{json_name.to_s}=", jsonizeable_object)
end
to_json(options) click to toggle source
# File lib/blitline/attribute_jsonizer.rb, line 9
def to_json(options)
  json_hash = {}
  self.instance_variables.each do |iv|
    key = iv
    value = self.instance_variable_get(iv)
    json_hash[key.to_s.gsub("@","")] = value unless value.kind_of?(Array) && value.length == 0 #Bail on empty arrays
  end
  MultiJson.dump(json_hash)
end