class MR::ReadModel::JsonStructField
Public Instance Methods
reader(read_model_data)
click to toggle source
# File lib/mr/read_model/fields.rb, line 174 def reader(read_model_data) json_value = read_model_data[self.name] return json_value if json_value.nil? if json_value.kind_of?(String) begin return MR::JsonField.decode(json_value) rescue MR::JsonField::InvalidJSONError => exception message = "can't decode `#{self.name}` JSON: #{exception.message}" raise exception.class, message, exception.backtrace end else return json_value end end
struct_class()
click to toggle source
# File lib/mr/read_model/fields.rb, line 164 def struct_class @struct_class ||= if self.struct_class_name.kind_of?(String) names = self.struct_class_name.to_s.split('::').reject{ |name| name.empty? } namespace = self.struct_class_name =~ /^::/ ? Object : self.read_model_class names.inject(namespace){ |o, name| o.const_get(name) } else self.struct_class_name end end