Sha256: a3f728ad51e480e1e4a297e7cc334b9d2c3191a812b6095e12965414fc947467
Contents?: true
Size: 955 Bytes
Versions: 23
Compression:
Stored size: 955 Bytes
Contents
require 'singleton' require 'clickhouse' require 'active_support/core_ext/hash/keys' require 'active_support/concern' module ActiveHouse class Configuration include Singleton MAIN_NAME = :main CONNECTION_KEYS = [ :url, :urls, :host, :port, :scheme, :database ].freeze class << self alias configuration instance end attr_reader :connection_config, :logger def logger=(value) @logger = value Clickhouse.logger = @logger end def connection_config=(value) @connection_config = value.deep_symbolize_keys end def connection_config_for(name = nil) name ||= MAIN_NAME name = name.to_sym config = if name == MAIN_NAME connection_config.key?(name) ? connection_config.fetch(name) : connection_config else connection_config.fetch(name) end config.slice(*CONNECTION_KEYS) end end end
Version data entries
23 entries across 23 versions & 1 rubygems