Class: Elasticsearch::Model::Extensions::DestroyCallback

Inherits:
Callback
  • Object
show all
Defined in:
lib/elasticsearch/model/extensions/destroy_callback.rb

Instance Method Summary collapse

Methods inherited from Callback

#config, #initialize, #log, #update_for_records, #with_error_logging

Constructor Details

This class inherits a constructor from Elasticsearch::Model::Extensions::Callback

Instance Method Details

#after_commit(record) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/elasticsearch/model/extensions/destroy_callback.rb', line 7

def after_commit(record)
  with_error_logging do
    records_to_update_documents = config.records_to_update_documents
    only_if = config.only_if
    callback = self

    record.instance_eval do
      return unless only_if.call(self)

      target = records_to_update_documents.call(self)

      if target.respond_to? :each
        callback.update_for_records(*target)
      else
        callback.update_for_records(target)
      end
    end
  end
end