Sha256: 4bb4cb8de63f93167a755ab8f56a43860a93d76f2ea56dc571082a8b751c9a7c

Contents?: true

Size: 706 Bytes

Versions: 3

Compression:

Stored size: 706 Bytes

Contents

require 'rubypitaya/core/config_core'

module RubyPitaya

  class Config

    attr_writer :config_core_override

    def initialize
      @config_core = ConfigCore.new
      @config_core_override = nil

      @result_cache = {}
    end

    def [](key)
      result = @result_cache[key]
      return result unless result.nil?

      result = @config_core_override[key] unless @config_core_override.nil?
      result = @config_core[key] if result.nil?

      @result_cache[key] = result

      result
    end

    def auto_reload
      @config_core.auto_reload
      @config_core_override.auto_reload unless @config_core_override.nil?
    end

    def clear_cache
      @result_cache.clear
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rubypitaya-2.17.0 ./lib/rubypitaya/core/config.rb
rubypitaya-2.16.0 ./lib/rubypitaya/core/config.rb
rubypitaya-2.15.0 ./lib/rubypitaya/core/config.rb