use now module-global engine and session factory
This commit is contained in:
parent
16a8bcf5c3
commit
bece8863ef
5 changed files with 22 additions and 21 deletions
|
@ -12,10 +12,9 @@ class Storage(common.Storage):
|
|||
|
||||
uidTable = None
|
||||
|
||||
def __init__(self, engine, schema=None):
|
||||
super(Storage, self).__init__(engine, schema)
|
||||
def __init__(self, schema=None):
|
||||
super(Storage, self).__init__(schema)
|
||||
self.uidTable = self.getUidTable(self.schema)
|
||||
self.session = self.Session()
|
||||
|
||||
def storeUid(self, ouid, nuid):
|
||||
ouid = int(ouid)
|
||||
|
|
|
@ -6,7 +6,8 @@ from datetime import datetime
|
|||
import transaction
|
||||
|
||||
import config
|
||||
from cco.storage.common import getEngine
|
||||
import cco.storage.common
|
||||
from cco.storage.common import getEngine, sessionFactory
|
||||
from cco.storage import tracking
|
||||
from loops.config.base import LoopsOptions
|
||||
from loops.storage.compat.common import Storage
|
||||
|
@ -24,10 +25,7 @@ def migrate(loopsRoot, recFolderName, factory=tracking.Container):
|
|||
if schema is not None:
|
||||
schema = schema[0]
|
||||
#print('*** schema:', schema)
|
||||
storage = Storage(getEngine(config.dbengine, config.dbname,
|
||||
config.dbuser, config.dbpassword,
|
||||
host=config.dbhost, port=config.dbport),
|
||||
schema=schema)
|
||||
storage = Storage(schema=schema)
|
||||
container = storage.create(factory)
|
||||
for id, inTrack in rf.items():
|
||||
ts = datetime.fromtimestamp(inTrack.timeStamp)
|
||||
|
|
|
@ -4,22 +4,22 @@
|
|||
"""
|
||||
|
||||
import config
|
||||
config.dbname = 'ccotest'
|
||||
config.dbuser = 'ccotest'
|
||||
config.dbpassword = 'cco'
|
||||
|
||||
import unittest
|
||||
from zope import component, interface
|
||||
from zope.app.testing.setup import placefulSetUp, placefulTearDown
|
||||
|
||||
from cco.storage.common import getEngine
|
||||
import cco.storage.common
|
||||
from cco.storage.common import getEngine, sessionFactory
|
||||
from loops.expert.testsetup import TestSite
|
||||
from loops.organize.personal.setup import SetupManager
|
||||
from loops.organize.tests import setupObjectsForTesting
|
||||
from loops.storage.compat.common import Storage
|
||||
from loops import util
|
||||
|
||||
config.dbname = 'ccotest'
|
||||
config.dbuser = 'ccotest'
|
||||
config.dbpassword = 'cco'
|
||||
|
||||
|
||||
class Glob(object):
|
||||
pass
|
||||
|
@ -38,8 +38,7 @@ class TestCase(unittest.TestCase):
|
|||
loopsId = util.getUidForObject(loopsRoot)
|
||||
setupData = setupObjectsForTesting(site, g.concepts)
|
||||
g.johnC = setupData.johnC
|
||||
g.storage = Storage(getEngine('postgresql', 'ccotest', 'ccotest', 'cco'),
|
||||
schema='testing')
|
||||
g.storage = Storage(schema='testing')
|
||||
|
||||
@classmethod
|
||||
def cleanup(cls):
|
||||
|
|
|
@ -7,6 +7,8 @@ import transaction
|
|||
from zope import component
|
||||
from zope.traversing.api import getName
|
||||
|
||||
from loops.storage.tests import common
|
||||
|
||||
import config
|
||||
from loops.concept import Concept
|
||||
from loops.config.base import LoopsOptions
|
||||
|
@ -15,7 +17,6 @@ from loops.organize.personal.interfaces import IFavorites
|
|||
from loops.organize.personal.storage.favorite import Favorites
|
||||
from loops.storage.migration.tracking import migrate
|
||||
from loops.setup import addAndConfigureObject
|
||||
from loops.storage.tests import common
|
||||
from loops import util
|
||||
|
||||
|
||||
|
|
14
util.py
14
util.py
|
@ -23,13 +23,20 @@ except ImportError:
|
|||
markdown = None
|
||||
|
||||
import config
|
||||
from cco.storage.common import Storage, getEngine
|
||||
import cco.storage.common
|
||||
from cco.storage.common import Storage, getEngine, sessionFactory
|
||||
import cybertools
|
||||
from cybertools.meta.interfaces import IOptions
|
||||
from loops.browser.util import html_quote
|
||||
|
||||
_ = MessageFactory('loops')
|
||||
|
||||
engine = getEngine(config.dbengine, config.dbname,
|
||||
config.dbuser, config.dbpassword,
|
||||
host=config.dbhost, port=config.dbport)
|
||||
cco.storage.common.engine = engine
|
||||
cco.storage.common.Session = sessionFactory(engine)
|
||||
|
||||
|
||||
renderingFactories = {
|
||||
'text/plain': 'zope.source.plaintext',
|
||||
|
@ -126,10 +133,7 @@ def records(context, name, factory):
|
|||
opts = IOptions(root)
|
||||
if name in (opts.cco.storage.records or []):
|
||||
schema = (opts.cco.storage.schema or [None])[0]
|
||||
storage = Storage(getEngine(config.dbengine, config.dbname,
|
||||
config.dbuser, config.dbpassword,
|
||||
host=config.dbhost, port=config.dbport),
|
||||
schema=schema)
|
||||
storage = Storage( schema=schema)
|
||||
cont = storage.create(factory)
|
||||
else:
|
||||
cont = root.getRecordManager().get(name)
|
||||
|
|
Loading…
Add table
Reference in a new issue