class Icalia::ModelBase
Attributes
serialization_context[R]
Public Class Methods
has_many(*associations)
click to toggle source
# File lib/icalia-sdk-event-core/models/model_base.rb, line 34 def has_many(*associations) associations.each do |association| attr_reader association associated_resource_collections << association end end
has_one(*associations)
click to toggle source
# File lib/icalia-sdk-event-core/models/model_base.rb, line 27 def has_one(*associations) associations.each do |association| attr_reader association associated_resources << association end end
new(object_attributes = {})
click to toggle source
# File lib/icalia-sdk-event-core/models/model_base.rb, line 15 def initialize(object_attributes = {}) @serialization_context = object_attributes.delete :serialization_context object_attributes.each do |key, value| attribute_name = "#{key}".underscore next register_stand_in(attribute_name, value) if value.is_a? ModelProxy next register_collection(attribute_name, value) if value.is_a? Array instance_variable_set("@#{attribute_name}", value) end end
Private Instance Methods
register_collection(association, collection)
click to toggle source
# File lib/icalia-sdk-event-core/models/model_base.rb, line 44 def register_collection(association, collection) instance_variable_set("@#{association}", collection) collection.each_with_index do |item, index| next unless item.is_a? ModelProxy serialization_context.register_stand_in model: self, index: index, stand_in: item, association: association end end
register_stand_in(association, stand_in)
click to toggle source
# File lib/icalia-sdk-event-core/models/model_base.rb, line 55 def register_stand_in(association, stand_in) instance_variable_set("@#{association}", stand_in) serialization_context.register_stand_in model: self, stand_in: stand_in, association: association end