summaryrefslogtreecommitdiff
path: root/python/skytools/sqltools.py
diff options
context:
space:
mode:
authorMarko Kreen2007-12-07 15:01:29 +0000
committerMarko Kreen2007-12-07 15:01:29 +0000
commit69a07326c60b92f8acfb921951d464096fe5c65f (patch)
treedf6d1cefef9288039315e72b967da6db139d93ec /python/skytools/sqltools.py
parentea6ffe2f0703bc05cb0fe1b5d77ae19af2bd8e4e (diff)
change db_install logger to be a callback
Diffstat (limited to 'python/skytools/sqltools.py')
-rw-r--r--python/skytools/sqltools.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/python/skytools/sqltools.py b/python/skytools/sqltools.py
index 2867a114..b41b09e0 100644
--- a/python/skytools/sqltools.py
+++ b/python/skytools/sqltools.py
@@ -294,6 +294,8 @@ def full_copy(tablename, src_curs, dst_curs, column_list = []):
# SQL installer
#
+def _nologger(msg): pass
+
class DBObject(object):
"""Base class for installable DB objects."""
name = None
@@ -304,15 +306,13 @@ class DBObject(object):
self.sql = sql
self.sql_file = sql_file
- def create(self, curs, log = None):
- if log:
- log.info('Installing %s' % self.name)
+ def create(self, curs, logger = _nologger):
+ logger('Installing %s' % self.name)
if self.sql:
sql = self.sql
elif self.sql_file:
fn = self.find_file()
- if log:
- log.info(" Reading from %s" % fn)
+ logger(" Reading from %s" % fn)
sql = open(fn, "r").read()
else:
raise Exception('object not defined')
@@ -359,12 +359,11 @@ class DBLanguage(DBObject):
def exists(self, curs):
return exists_language(curs, self.name)
-def db_install(curs, list, log = None):
+def db_install(curs, list, logger = _nologger):
"""Installs list of objects into db."""
for obj in list:
if not obj.exists(curs):
- obj.create(curs, log)
+ obj.create(curs, logger)
else:
- if log:
- log.info('%s is installed' % obj.name)
+ logger('%s is installed' % obj.name)