Sha256: d4d9b1fe8d1ed71641ff16a29e174f60841c3ad5633aff9bb94ca13e6dd67ccc

Contents?: true

Size: 469 Bytes

Versions: 5

Compression:

Stored size: 469 Bytes

Contents

# frozen_string_literal: true

module Esse::ActiveRecord
  module Callbacks
    class IndexingOnDestroy < Callback
      def call(model)
        record = block_result || model
        document = repo.serialize(record)
        repo.index.delete(document, **options) if document && !document.ignore_on_delete?
        true
      rescue Esse::Transport::NotFoundError
        true
      end
    end

    register_callback(:indexing, :destroy, IndexingOnDestroy)
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
esse-active_record-0.3.9 lib/esse/active_record/callbacks/indexing_on_destroy.rb
esse-active_record-0.3.8 lib/esse/active_record/callbacks/indexing_on_destroy.rb
esse-active_record-0.3.7 lib/esse/active_record/callbacks/indexing_on_destroy.rb
esse-active_record-0.3.6 lib/esse/active_record/callbacks/indexing_on_destroy.rb
esse-active_record-0.3.5 lib/esse/active_record/callbacks/indexing_on_destroy.rb