Class: EbisuConnection::ConnectionManager
- Inherits:
-
FreshConnection::AbstractConnectionManager
- Object
- FreshConnection::AbstractConnectionManager
- EbisuConnection::ConnectionManager
- Defined in:
- lib/ebisu_connection/connection_manager.rb
Instance Method Summary collapse
- #clear_all_connections! ⇒ Object
-
#initialize(slave_group = "slave") ⇒ ConnectionManager
constructor
A new instance of ConnectionManager.
- #put_aside! ⇒ Object
- #recovery? ⇒ Boolean
- #slave_connection ⇒ Object
Constructor Details
#initialize(slave_group = "slave") ⇒ ConnectionManager
Returns a new instance of ConnectionManager.
5 6 7 8 |
# File 'lib/ebisu_connection/connection_manager.rb', line 5 def initialize(slave_group = "slave") super @slaves = Concurrent::Map.new end |
Instance Method Details
#clear_all_connections! ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/ebisu_connection/connection_manager.rb', line 23 def clear_all_connections! @slaves.each_value do |s| s.all_disconnect! end @slaves.clear ConfFile.conf_clear! end |
#put_aside! ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/ebisu_connection/connection_manager.rb', line 14 def put_aside! return if check_own_connection ConfFile.if_modify do reserve_release_all_connection check_own_connection end end |
#recovery? ⇒ Boolean
32 33 34 |
# File 'lib/ebisu_connection/connection_manager.rb', line 32 def recovery? slaves.recovery_connection? end |
#slave_connection ⇒ Object
10 11 12 |
# File 'lib/ebisu_connection/connection_manager.rb', line 10 def slave_connection slaves.sample.connection end |