aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/db/sql/open.py
diff options
context:
space:
mode:
authorAaron Williamson <aaron@copiesofcopies.org>2012-01-17 00:59:21 -0500
committerAaron Williamson <aaron@copiesofcopies.org>2012-01-17 00:59:21 -0500
commit99a270e95298b248a77b07203ab3921078bd7906 (patch)
tree34711abf27ab7a614c92842b456bf74ec3d5d5fb /mediagoblin/db/sql/open.py
parent25b48323a86a1036112f2f33c889d5d12d5dee9c (diff)
parent8c7701f9f1653cf4038143cfb7a497ae21edf108 (diff)
downloadmediagoblin-99a270e95298b248a77b07203ab3921078bd7906.tar.lz
mediagoblin-99a270e95298b248a77b07203ab3921078bd7906.tar.xz
mediagoblin-99a270e95298b248a77b07203ab3921078bd7906.zip
Merged changes with upstream
Diffstat (limited to 'mediagoblin/db/sql/open.py')
-rw-r--r--mediagoblin/db/sql/open.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/mediagoblin/db/sql/open.py b/mediagoblin/db/sql/open.py
new file mode 100644
index 00000000..c682bd3b
--- /dev/null
+++ b/mediagoblin/db/sql/open.py
@@ -0,0 +1,33 @@
+from sqlalchemy import create_engine
+
+from mediagoblin.db.sql.base import Session
+from mediagoblin.db.sql.models import Base
+
+
+class DatabaseMaster(object):
+ def __init__(self, engine):
+ self.engine = engine
+
+ for k,v in Base._decl_class_registry.iteritems():
+ setattr(self, k, v)
+
+ def commit(self):
+ Session.commit()
+
+ def save(self, obj):
+ Session.add(obj)
+ Session.flush()
+
+ def reset_after_request(self):
+ Session.remove()
+
+
+def setup_connection_and_db_from_config(app_config):
+ engine = create_engine(app_config['sql_engine'], echo=True)
+ Session.configure(bind=engine)
+
+ return "dummy conn", DatabaseMaster(engine)
+
+
+def check_db_migrations_current(db):
+ pass