Sha256: ff835501c33a5d611e0a5352ebc11780ce75f11d0498c9f751211ff41cf725b1

Contents?: true

Size: 844 Bytes

Versions: 5

Compression:

Stored size: 844 Bytes

Contents

# frozen_string_literal: true

# @api private
# @since 0.8.0
class SmartCore::Container::DependencyWatcher::Observer
  # @param container [SmartCore::Container]
  # @param dependency_path [String]
  # @param callback [Proc]
  # @return [void]
  #
  # @api private
  # @since 0.8.0
  def initialize(container, dependency_path, callback)
    @container = container
    @dependency_path = dependency_path
    @callback = callback
  end

  # @return [void]
  #
  # @api private
  # @since 0.8.0
  def notify!
    callback.call(dependency_path, container)
  end

  private

  # @return [SmartCore::Container]
  #
  # @api private
  # @since 0.8.0
  attr_reader :container

  # @return [String]
  #
  # @api private
  # @since 0.8.0
  attr_reader :dependency_path

  # @return [Proc]
  #
  # @api private
  # @since 0.8.0
  attr_reader :callback
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
smart_container-0.11.0 lib/smart_core/container/dependency_watcher/observer.rb
smart_container-0.10.0 lib/smart_core/container/dependency_watcher/observer.rb
smart_container-0.9.0 lib/smart_core/container/dependency_watcher/observer.rb
smart_container-0.8.1 lib/smart_core/container/dependency_watcher/observer.rb
smart_container-0.8.0 lib/smart_core/container/dependency_watcher/observer.rb