diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-27 04:44:49 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2005-10-27 04:44:49 +0000 |
commit | 29aed5938e0c2002b55c52ce3892290c976dba30 (patch) | |
tree | 9ffeec7965df640deb9dabe85aa8485652118afb /lib/sqlalchemy/engine.py | |
parent | 2a43c9f6ecf2ea63a1db4950638ce0696f866a38 (diff) | |
download | sqlalchemy-29aed5938e0c2002b55c52ce3892290c976dba30.tar.gz |
Diffstat (limited to 'lib/sqlalchemy/engine.py')
-rw-r--r-- | lib/sqlalchemy/engine.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/sqlalchemy/engine.py b/lib/sqlalchemy/engine.py index 37fb952e7..c9bdf893b 100644 --- a/lib/sqlalchemy/engine.py +++ b/lib/sqlalchemy/engine.py @@ -51,17 +51,23 @@ class SQLEngine(schema.SchemaEngine): """base class for a series of database-specific engines. serves as an abstract factory for implementation objects as well as database connections, transactions, SQL generators, etc.""" - def __init__(self, pool = None, echo = False, **params): + def __init__(self, pool = None, echo = False, logger = None, **params): # get a handle on the connection pool via the connect arguments # this insures the SQLEngine instance integrates with the pool referenced # by direct usage of pool.manager(<module>).connect(*args, **params) (cargs, cparams) = self.connect_args() - self._pool = sqlalchemy.pool.manage(self.dbapi()).get_pool(*cargs, **cparams) + if pool is None: + self._pool = sqlalchemy.pool.manage(self.dbapi(), **params).get_pool(*cargs, **cparams) + else: + self._pool = pool self.echo = echo self.context = util.ThreadLocal(raiseerror=False) self.tables = {} self.notes = {} - self.logger = sys.stdout + if logger is None: + self.logger = sys.stdout + else: + self.logger = logger def type_descriptor(self, typeobj): |