# Copyright (c) 2015 Sqreen. All Rights Reserved. # Please refer to our terms for more information: https://www.sqreen.io/terms.html module Sqreen module Dependency class Callback attr_reader :name def initialize(name = nil, &block) @name = name @block = block @disabled = false end def call(*args, &block) Sqreen.log.debug "[#{Process.pid}] Callback #{@name} disabled:#{disabled?}" return if @disabled @block.call(*args, &block) end def disable @disabled = true end def enable @disabled = false end def disabled? @disabled end end end end