This class has the shared behavior between all association models.
# File lib/fog/core/associations/default.rb, line 9 def initialize(model, name, collection_name, options) @model = model @name = name model.associations[name] = collection_name @aliases = options.fetch(:aliases, []) @as = options.fetch(:as, name) @association_class = options.fetch(:association_class, Fog::Association) create_setter create_getter create_aliases create_mask end
# File lib/fog/core/associations/default.rb, line 22 def create_aliases Array(aliases).each do |alias_name| model.aliases[alias_name] = name end end
# File lib/fog/core/associations/default.rb, line 28 def create_mask model.masks[name] = as end