Module: ConnectionManager::AbstractAdapter
- Defined in:
- lib/connection_manager/connection_adapters/abstract_adapter.rb
Instance Method Summary collapse
- #config ⇒ Object
-
#cross_schema_support? ⇒ Boolean
(also: #cross_database_support?)
Determines if connection supports cross database queries.
- #database_name ⇒ Object
- #master_keys ⇒ Object
- #mysql? ⇒ Boolean
- #postgresql? ⇒ Boolean
- #replicated? ⇒ Boolean
- #replication_keys(type = :slaves) ⇒ Object
- #replications ⇒ Object
- #slave_keys ⇒ Object
- #sqlserver? ⇒ Boolean
Instance Method Details
#config ⇒ Object
3 4 5 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 3 def config @config end |
#cross_schema_support? ⇒ Boolean Also known as: cross_database_support?
Determines if connection supports cross database queries
7 8 9 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 7 def cross_schema_support? @cross_schema_support ||= (config[:adapter].match(/(mysql)|(postgres)|(sqlserver)/i)) end |
#database_name ⇒ Object
28 29 30 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 28 def database_name config[:database] end |
#master_keys ⇒ Object
36 37 38 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 36 def master_keys @master_keys ||= (config[:masters] ? config[:masters].collect{|r| r.to_sym} : []) end |
#mysql? ⇒ Boolean
12 13 14 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 12 def mysql? @is_mysql ||= (config[:adapter].match(/(mysql)/i)) end |
#postgresql? ⇒ Boolean
16 17 18 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 16 def postgresql? @is_postgresql ||= (config[:adapter].match(/(postgres)/i)) end |
#replicated? ⇒ Boolean
24 25 26 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 24 def replicated? (!slave_keys.blank? || !master_keys.blank?) end |
#replication_keys(type = :slaves) ⇒ Object
40 41 42 43 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 40 def replication_keys(type=:slaves) return slave_keys if type == :slaves master_keys end |
#replications ⇒ Object
45 46 47 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 45 def replications {:slaves => slave_keys, :masters => master_keys} end |
#slave_keys ⇒ Object
32 33 34 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 32 def slave_keys @slave_keys ||= (config[:slaves] ? config[:slaves].collect{|r| r.to_sym} : [] ) end |
#sqlserver? ⇒ Boolean
20 21 22 |
# File 'lib/connection_manager/connection_adapters/abstract_adapter.rb', line 20 def sqlserver? @is_sqlserver ||= (config[:adapter].match(/(sqlserver)/i)) end |