Sha256: 18afcd60c85672ef750c447b95cb7a6c8f540bb7cdd0141cb90618e55eb61449
Contents?: true
Size: 1.19 KB
Versions: 3
Compression:
Stored size: 1.19 KB
Contents
require 'iowa/Pool' module Iowa class Pool class DBConnectionPool < Iowa::Pool def self.DBClass(val = nil) if (val or !@dbclass) if val @dbclass = val else require 'dbi' @dbclass = DBI end DBNewMethodName() end @dbclass end def self.db_class(val = nil); DBClass(val); end def self.DBNewMethodName(val = nil) @db_new_method_name ||= nil if (val or !@db_new_method_name) if val @db_new_method_name = val else @db_new_method_name = @dbclass == DBI ? :connect : :new end else @db_new_method_name end end def self.db_new_method_name(val = nil); DBNewMethodName(val = nil); end def self.ConnectArgs(val = nil) (val or !@connect_args) ? (@connect_args = val) : @connect_args end def self.connect_args(val = nil); ConnectArgs(val); end def initialize(params = {}) @connect_args = params[:connect_args] || self.class.ConnectArgs @dbclass = params[:dbclass] || self.class.DBClass @db_new_method_name = params[:db_new_method_name] || self.class.DBNewMethodName super end def newobj @dbclass.__send__(@db_new_method_name,*@connect_args) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
IOWA-1.0.3 | src/iowa/pools/DBConnectionPool.rb |
IOWA-1.0.2 | src/iowa/pools/DBConnectionPool.rb |
IOWA-1.0.0 | src/iowa/pools/DBConnectionPool.rb |