Sha256: 9fe57aa9605b4cac1b5c0f5943cd409d2cb5a65ef6e8e7b7782bf87138823588

Contents?: true

Size: 697 Bytes

Versions: 12

Compression:

Stored size: 697 Bytes

Contents

# Copyright (c) 2015 Sqreen. All Rights Reserved.
# Please refer to our terms for more information: https://www.sqreen.com/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

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
sqreen-1.18.6-java lib/sqreen/dependency/callback.rb
sqreen-1.18.6 lib/sqreen/dependency/callback.rb
sqreen-1.18.5-java lib/sqreen/dependency/callback.rb
sqreen-1.18.5 lib/sqreen/dependency/callback.rb
sqreen-1.18.4-java lib/sqreen/dependency/callback.rb
sqreen-1.18.4 lib/sqreen/dependency/callback.rb
sqreen-1.18.3-java lib/sqreen/dependency/callback.rb
sqreen-1.18.3 lib/sqreen/dependency/callback.rb
sqreen-1.18.3.beta2 lib/sqreen/dependency/callback.rb
sqreen-1.18.3.beta1 lib/sqreen/dependency/callback.rb
sqreen-1.18.2-java lib/sqreen/dependency/callback.rb
sqreen-1.18.2 lib/sqreen/dependency/callback.rb