Class: FreshConnection::ConnectionManager

Inherits:
Object
  • Object
show all
Defined in:
lib/fresh_connection/connection_manager.rb

Instance Method Summary collapse

Constructor Details

#initializeConnectionManager

Returns a new instance of ConnectionManager.



3
4
5
# File 'lib/fresh_connection/connection_manager.rb', line 3

def initialize
  @mutex = Mutex.new
end

Instance Method Details

#put_aside!Object



14
15
16
17
18
19
20
21
# File 'lib/fresh_connection/connection_manager.rb', line 14

def put_aside!
  @mutex.synchronize do
    @slave_connections ||= {}
    if c = @slave_connections.delete(current_thread_id)
      c.disconnect! rescue nil
    end
  end
end

#slave_connectionObject



7
8
9
10
11
12
# File 'lib/fresh_connection/connection_manager.rb', line 7

def slave_connection
  @mutex.synchronize do
    @slave_connections ||= {}
    @slave_connections[current_thread_id] ||= new_connection
  end
end