Class: Materialist::Materializer::Internals::LinkMapping

Inherits:
Object
  • Object
show all
Defined in:
lib/materialist/materializer/internals/link_mapping.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(key:, enable_caching: false) ⇒ LinkMapping

Returns a new instance of LinkMapping.



5
6
7
8
9
# File 'lib/materialist/materializer/internals/link_mapping.rb', line 5

def initialize(key:, enable_caching: false)
  @key = key
  @enable_caching = enable_caching
  @mapping = []
end

Instance Attribute Details

#mappingObject (readonly)

Returns the value of attribute mapping.



16
17
18
# File 'lib/materialist/materializer/internals/link_mapping.rb', line 16

def mapping
  @mapping
end

Instance Method Details

#map(resource) ⇒ Object



11
12
13
14
# File 'lib/materialist/materializer/internals/link_mapping.rb', line 11

def map(resource)
  return unless linked_resource = linked_resource(resource)
  mapping.map{ |m| m.map(linked_resource) }.compact.reduce(&:merge)
end