--- a/ForgeClassic/sfx/middleware.py
+++ b/ForgeClassic/sfx/middleware.py
@@ -15,33 +15,42 @@
self.config = config
self.environ_values = {
'allura.sfx_session_manager': SFXSessionMgr(),
- 'allura.sfx.site_db':engine_from_config(h.config_with_prefix(config, 'site_db.')),
- 'allura.sfx.mail_db':engine_from_config(h.config_with_prefix(config, 'mail_db.')),
- 'allura.sfx.task_db':engine_from_config(h.config_with_prefix(config, 'task_db.')),
- 'allura.sfx.epic_db':engine_from_config(h.config_with_prefix(config, 'epic_db.'))
}
self.environ_values['allura.sfx_session_manager'].setup_sessiondb_connection_pool(
config)
- M.site_meta.bind = self.environ_values['allura.sfx.site_db']
- M.mail_meta.bind = self.environ_values['allura.sfx.mail_db']
- M.task_meta.bind = self.environ_values['allura.sfx.task_db']
- M.epic_meta.bind =self.environ_values['allura.sfx.epic_db']
- M.tables.mail_group_list = Table('mail_group_list', M.site_meta, autoload=True)
- M.tables.groups = Table(
+ self.configure_databases(config)
+
+ def configure_databases(self, config):
+ M.site_meta.bind = engine_from_config(h.config_with_prefix(config, 'site_db.'))
+ M.mail_meta.bind = engine_from_config(h.config_with_prefix(config, 'mail_db.'))
+ M.task_meta.bind = engine_from_config(h.config_with_prefix(config, 'task_db.'))
+ M.epic_meta.bind = engine_from_config(h.config_with_prefix(config, 'epic_db.'))
+ # Configure SFX Database Tables
+ T = M.tables
+ # Alexandria Tables
+ T.mail_group_list = Table('mail_group_list', M.site_meta, autoload=True)
+ T.groups = Table(
'groups', M.site_meta, autoload=True,
- include_columns=['group_id', 'group_name', 'status']),
- M.tables.mllist_subscriber = Table('mllist_subscriber', M.site_meta, autoload=True)
- M.tables.prweb_vhost = Table('prweb_vhost', M.site_meta, autoload=True)
- M.tables._mysql_auth = t = Table(
+ include_columns=['group_id', 'group_name', 'status'])
+ T.mllist_subscriber = Table('mllist_subscriber', M.site_meta, autoload=True)
+ T.prweb_vhost = Table('prweb_vhost', M.site_meta, autoload=True)
+ T._mysql_auth = t = Table(
'mysql_auth', M.site_meta, autoload=True,
)
- M.tables.mysql_auth = select([
+ T.mysql_auth = select([
t,
func.which_user(t.c.modified_by_uid).label('modified_user')]).alias('msql_auth_user')
- M.tables.backend_queue = Table('backend_queue', M.epic_meta, autoload=True)
- M.tables.lists = Table('lists', M.mail_meta, autoload=True)
- M.tables.ml_password_change = Table(
+ # MailDB tables
+ T.lists = Table('lists', M.mail_meta, autoload=True)
+ # TaskDB Tables
+ T.ml_password_change = Table(
'ml_password_change', M.task_meta, autoload=True)
+ # EpicDB Tables
+ T.backend_queue = Table('backend_queue', M.epic_meta, autoload=True)
+ T.object_metadata = Table('object_metadata', M.epic_meta, autoload=True)
+ T.feature_optin = Table('feature_optin', M.epic_meta, autoload=True)
+ T.feature_grouping = Table('feature_grouping', M.epic_meta, autoload=True)
+ T.sys_type_description = Table('sys_type_description', M.epic_meta, autoload=True)
def __call__(self, environ, start_response):
request = Request(environ)