Module: Multidb
- Defined in:
- lib/multidb.rb,
lib/multidb/version.rb,
lib/multidb/balancer.rb,
lib/multidb/configuration.rb,
lib/multidb/model_extensions.rb
Defined Under Namespace
Modules: ModelExtensions Classes: Balancer, Candidate, Configuration
Constant Summary collapse
- VERSION =
'0.1.9'
Class Attribute Summary collapse
-
.balancer ⇒ Object
readonly
Returns the value of attribute balancer.
-
.configuration ⇒ Object
readonly
Returns the value of attribute configuration.
Class Method Summary collapse
Class Attribute Details
.balancer ⇒ Object (readonly)
Returns the value of attribute balancer.
21 22 23 |
# File 'lib/multidb.rb', line 21 def balancer @balancer end |
.configuration ⇒ Object (readonly)
Returns the value of attribute configuration.
16 17 18 |
# File 'lib/multidb/configuration.rb', line 16 def configuration @configuration end |
Class Method Details
.configure! ⇒ Object
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/multidb/configuration.rb', line 5 def configure! connection_pool = ActiveRecord::Base.connection_pool if connection_pool connection = connection_pool.connection activerecord_config = connection.instance_variable_get(:@config).dup.with_indifferent_access default_adapter, configuration_hash = activerecord_config, activerecord_config.delete(:multidb) configuration_hash ||= {} @configuration = Configuration.new(default_adapter, configuration_hash) end end |
.install! ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/multidb.rb', line 11 def install! configure! if @configuration and not @configuration.raw_configuration[:databases].blank? ActiveRecord::Base.class_eval do include Multidb::ModelExtensions end end @balancer = Balancer.new(@configuration) end |