module MarkMapper::Plugins::Associations

Public Instance Methods

associations() click to toggle source
# File lib/mark_mapper/plugins/associations.rb, line 67
def associations
  self.class.associations
end
build_proxy(association) click to toggle source
# File lib/mark_mapper/plugins/associations.rb, line 75
def build_proxy(association)
  proxy = association.proxy_class.new(self, association)
  self.instance_variable_set(association.ivar, proxy)

  proxy
end
embedded_associations() click to toggle source
# File lib/mark_mapper/plugins/associations.rb, line 71
def embedded_associations
  self.class.embedded_associations
end
get_proxy(association) click to toggle source
# File lib/mark_mapper/plugins/associations.rb, line 82
def get_proxy(association)
  proxy = self.instance_variable_get(association.ivar) if instance_variable_defined?(association.ivar)
  proxy ||= build_proxy(association)
end
save_to_collection(options={}) click to toggle source
Calls superclass method
# File lib/mark_mapper/plugins/associations.rb, line 87
def save_to_collection(options={})
  super if defined?(super)
  associations.each do |association_name, association|
    proxy = get_proxy(association)
    proxy.save_to_collection(options) if proxy.proxy_respond_to?(:save_to_collection) && association.autosave?
  end
end