Sha256: 6826da4daf2f23dbc01fda9d1c9e8a4f965c37cdabcac8c46562c5819c4a07b6

Contents?: true

Size: 646 Bytes

Versions: 3

Compression:

Stored size: 646 Bytes

Contents

require 'massive_record/orm/persistence/operations/embedded/operation_helpers'

module MassiveRecord
  module ORM
    module Persistence
      module Operations
        module Embedded
          class Destroy
            include Operations, OperationHelpers

            def execute
              embedded_in_proxies.each do |proxy|
                if proxy.load_proxy_target && proxy.load_proxy_target.persisted?
                  inverse_proxy_for(proxy).delete(record)
                  update_embedded(proxy, nil)
                end
              end

              true
            end
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
massive_record-0.2.2 lib/massive_record/orm/persistence/operations/embedded/destroy.rb
massive_record-0.2.2.rc2 lib/massive_record/orm/persistence/operations/embedded/destroy.rb
massive_record-0.2.2.rc1 lib/massive_record/orm/persistence/operations/embedded/destroy.rb