Sha256: 3b15fcc830f77aa49e947e3c25fc395382a7128e33d21ab8712d5814269411a1

Contents?: true

Size: 703 Bytes

Versions: 1

Compression:

Stored size: 703 Bytes

Contents

require 'much-plugin'

require 'mr/after_commit/record_procs_methods'
require 'mr/fake_record'

module MR; end
module MR::AfterCommit

  module FakeRecord
    include MuchPlugin

    plugin_included do
      include MR::FakeRecord
      include RecordProcsMethods
      include InstanceMethods
    end

    module InstanceMethods

      def save!
        is_new = self.new_record?
        super.tap do
          callback_type = is_new ? :create : :update
          mr_after_commit_call_procs(callback_type)
          mr_after_commit_call_procs(:save)
        end
      end

      def destroy
        super.tap do
          mr_after_commit_call_procs(:destroy)
        end
      end

    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mr-0.35.2 lib/mr/after_commit/fake_record.rb