class Terrestrial::Configurations::MappingConfigOptionsProxy

Attributes

configuration[R]
mapping_name[R]

Public Class Methods

new(configuration, mapping_name) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 4
def initialize(configuration, mapping_name)
  @configuration = configuration
  @mapping_name = mapping_name
end

Public Instance Methods

belongs_to(*args) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 29
def belongs_to(*args)
  add_association(:belongs_to, args)
end
class(entity_class) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 74
def class(entity_class)
  add_override('class': entity_class)
end
class_name(class_name) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 78
def class_name(class_name)
  add_override(class_name: class_name)
end
created_at_timestamp(field_name = Default, &block) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 60
def created_at_timestamp(field_name = Default, &block)
  add_override(created_at_field: field_name)
  block && add_override(created_at_setter: block)
end
database_default_field(field_name, &object_setter) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 53
def database_default_field(field_name, &object_setter)
  configuration.overrides.fetch(mapping_name)[:database_default_fields_setter_map] ||= {}
  db_default_fields = configuration.overrides.fetch(mapping_name).fetch(:database_default_fields_setter_map)

  db_default_fields.merge!({field_name => object_setter})
end
database_owned_field(field_name, &object_setter) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 46
def database_owned_field(field_name, &object_setter)
  configuration.overrides.fetch(mapping_name)[:database_owned_fields_setter_map] ||= {}
  db_owned_fields = configuration.overrides.fetch(mapping_name).fetch(:database_owned_fields_setter_map)

  db_owned_fields.merge!({field_name => object_setter})
end
factory(callable) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 70
def factory(callable)
  add_override(factory: callable)
end
fields(field_names) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 33
def fields(field_names)
  add_override(fields: field_names)
end
has_many(*args) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 21
def has_many(*args)
  add_association(:has_many, args)
end
has_many_through(*args) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 25
def has_many_through(*args)
  add_association(:has_many_through, args)
end
primary_key(field_names) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 37
def primary_key(field_names)
  add_override(primary_key: field_names)
end
relation_name(name) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 12
def relation_name(name)
  add_override(relation_name: name)
end
Also aliased as: table_name
serializer(serializer_func) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 82
def serializer(serializer_func)
  add_override(serializer: serializer_func)
end
subset(subset_name, &block) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 17
def subset(subset_name, &block)
  configuration.add_subset(mapping_name, subset_name, block)
end
table_name(name)
Alias for: relation_name
updated_at_timestamp(field_name = Default, &block) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 65
def updated_at_timestamp(field_name = Default, &block)
  add_override(updated_at_field: field_name)
  block && add_override(updated_at_setter: block)
end
use_database_id(&block) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 41
def use_database_id(&block)
  add_override(use_database_id: true)
  block && add_override(database_id_setter: block)
end

Private Instance Methods

add_association(*args) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 92
def add_association(*args)
  configuration.add_association(mapping_name, *args)
end
add_override(*args) click to toggle source
# File lib/terrestrial/configurations/mapping_config_options_proxy.rb, line 88
def add_override(*args)
  configuration.add_override(mapping_name, *args)
end