Module: Sequel::ServerBlock

Defined in:
lib/sequel/extensions/server_block.rb

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (Object) extended(db)

Enable the server block on the connection pool, choosing the correct extension depending on whether the connection pool is threaded or not. Also defines the with_server method on the receiver for easy use.



45
46
47
48
49
50
51
52
53
54
# File 'lib/sequel/extensions/server_block.rb', line 45

def self.extended(db)
  pool = db.pool
  if defined?(ShardedThreadedConnectionPool) && pool.is_a?(ShardedThreadedConnectionPool)
    pool.extend(ThreadedServerBlock)
    pool.instance_variable_set(:@default_servers, {})
  else
    pool.extend(UnthreadedServerBlock)
    pool.instance_variable_set(:@default_servers, [])
  end
end

Instance Method Details

- (Object) with_server(server, &block)

Delegate to the connection pool



57
58
59
# File 'lib/sequel/extensions/server_block.rb', line 57

def with_server(server, &block)
  pool.with_server(server, &block)
end