Module: Elasticsearch::Model::Extensions::OuterDocumentUpdating::ClassMethods
- Defined in:
- lib/elasticsearch/model/extensions/outer_document_updating.rb
Defined Under Namespace
Modules: AssociationTraversal
Instance Method Summary collapse
- #initialize_active_record!(active_record_class, parent_class: parent_class, delayed:, only_if: -> r { true }, records_to_update_documents: nil, field_to_update: nil, block: block) ⇒ Object
- #partially_updates_document_of(parent_class, options, &block) ⇒ Object
Instance Method Details
#initialize_active_record!(active_record_class, parent_class: parent_class, delayed:, only_if: -> r { true }, records_to_update_documents: nil, field_to_update: nil, block: block) ⇒ Object
93 94 95 96 97 98 99 100 101 |
# File 'lib/elasticsearch/model/extensions/outer_document_updating.rb', line 93 def initialize_active_record!(active_record_class, parent_class: parent_class, delayed:, only_if: -> r { true }, records_to_update_documents: nil, field_to_update: nil, block: block) config = Elasticsearch::Model::Extensions::Configuration.new(active_record_class, parent_class: parent_class, delayed: delayed, only_if: binding.local_variable_get(:only_if), records_to_update_documents: records_to_update_documents, field_to_update: field_to_update, block: block ) active_record_class.after_commit Elasticsearch::Model::Extensions::UpdateCallback.new(config) active_record_class.after_commit Elasticsearch::Model::Extensions::DestroyCallback.new(config), on: :destroy end |
#partially_updates_document_of(parent_class, options, &block) ⇒ Object
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
# File 'lib/elasticsearch/model/extensions/outer_document_updating.rb', line 103 def partially_updates_document_of(parent_class, , &block) ||= {} delayed = [:delayed] || nil only_if = [:if] || (-> r { true }) records_to_update_documents = [:records_to_update_documents] || nil field_to_update = [:field_to_update] || nil initialize_active_record!( self, :parent_class => parent_class, :delayed => delayed, :only_if => only_if, :field_to_update => field_to_update, :records_to_update_documents => records_to_update_documents, :block => block ) end |