Module: Appsignal::Integrations::OwnershipIntegration Private

Defined in:
lib/appsignal/integrations/ownership.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Instance Method Details

#around_changeObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Implement the ‘around_change` logic by monkey-patching the reader, instead of by using the `around_change=` writer. This allows customers to use the `around_change=` writer in their own code without accidentally overriding AppSignal’s instrumentation.



11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/appsignal/integrations/ownership.rb', line 11

def around_change
  proc do |owner, block|
    OwnershipIntegrationHelper.set(Appsignal::Transaction.current, owner)

    original = super

    if original
      original.call(owner, block)
    else
      block.call
    end
  end
end