Module: Multidb

Defined in:
lib/multidb/version.rb,
lib/multidb/balancer.rb,
lib/multidb/candidate.rb,
lib/multidb/configuration.rb,
lib/multidb/log_subscriber.rb,
lib/multidb/model_extensions.rb

Defined Under Namespace

Modules: Connection, LogSubscriberExtension, ModelExtensions Classes: Balancer, Candidate, Configuration, NotInitializedError

Constant Summary collapse

VERSION =
'0.5.0'

Class Method Summary collapse

Class Method Details

.balancerObject



16
17
18
# File 'lib/multidb/configuration.rb', line 16

def self.balancer
  @balancer || raise(NotInitializedError, 'Balancer not initialized. You need to run Multidb.init first')
end

.init(config) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/multidb/configuration.rb', line 8

def self.init(config)
  activerecord_config = config.dup.with_indifferent_access
  default_adapter = activerecord_config
  configuration_hash = activerecord_config.delete(:multidb)

  @balancer = Balancer.new(Configuration.new(default_adapter, configuration_hash || {}))
end

.reset!Object



20
21
22
# File 'lib/multidb/configuration.rb', line 20

def self.reset!
  @balancer = nil
end