lib/replidog/proxy.rb in replidog-1.1.0 vs lib/replidog/proxy.rb in replidog-1.1.1

- old
+ new

@@ -32,19 +32,27 @@ def current_connection_name=(connection_name) Thread.current['replidog.current_connection_name'] = connection_name end def transaction(options = {}, &block) - old = current_connection_name + old_connection_name = current_connection_name self.current_connection_name ||= :master current_connection.transaction(options, &block) ensure - self.current_connection_name = old + self.current_connection_name = old_connection_name end + def lock(locks = true) + old_connection_name = current_connection_name + self.current_connection_name ||= :master + current_connection.lock(locks) + ensure + self.current_connection_name = old_connection_name + end + def connected? - current_model.connected_without_replidog? && slave_connection_pool_table.values.any?(&:connected?) + current_model.connection_handler.connected?(current_model) && slave_connection_pool_table.values.any?(&:connected?) end def clear_active_slave_connections! slave_connection_pool_table.each_value do |pool| pool.release_connection @@ -119,10 +127,10 @@ slave_connection_pool_table[current_connection_name.to_s].try(:connection) or raise_connection_not_found end end def master_connection - current_model.connection_without_replidog + current_model.retrieve_connection end def slave_connection slave_connection_pool.connection end