Class: Clowne::Adapters::ActiveRecord::Resolvers::Association
- Inherits:
-
Object
- Object
- Clowne::Adapters::ActiveRecord::Resolvers::Association
- Defined in:
- lib/clowne/adapters/active_record/resolvers/association.rb
Class Method Summary collapse
-
.call(source, record, declaration, adapter:, params:, **_options) ⇒ Object
rubocop: disable Metrics/ParameterLists.
Class Method Details
.call(source, record, declaration, adapter:, params:, **_options) ⇒ Object
rubocop: disable Metrics/ParameterLists
12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/clowne/adapters/active_record/resolvers/association.rb', line 12 def call(source, record, declaration, adapter:, params:, **) reflection = source.class.reflections[declaration.name.to_s] if reflection.nil? raise UnknownAssociation, "Association #{declaration.name} couldn't be found for #{source.class}" end cloner_class = Associations.cloner_for(reflection) cloner_class.new(reflection, source, declaration, adapter, params).call(record) record end |