summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDolph Mathews <dolph.mathews@gmail.com>2011-12-15 11:12:12 -0600
committerDolph Mathews <dolph.mathews@gmail.com>2011-12-15 11:12:12 -0600
commitb87a8f55d5b32e2b4e31085b52f44bbc7452aa3c (patch)
tree6298d1c466f02a52d81dabd5e7881d9043f39ecd
parentd1d3df0465f6ef1b14ed71eeed84d92c9fe6f256 (diff)
downloadkeystone-b87a8f55d5b32e2b4e31085b52f44bbc7452aa3c.tar.gz
keystone-b87a8f55d5b32e2b4e31085b52f44bbc7452aa3c.tar.xz
keystone-b87a8f55d5b32e2b4e31085b52f44bbc7452aa3c.zip
Refactor: Computing api/model module paths dynamically
Change-Id: I9bab67b0cf8ffa7baabfe543b7c2d2e0ff96e2b4
-rwxr-xr-xkeystone/backends/sqlalchemy/__init__.py10
1 files changed, 4 insertions, 6 deletions
diff --git a/keystone/backends/sqlalchemy/__init__.py b/keystone/backends/sqlalchemy/__init__.py
index 27d2a0dd..db1f7d19 100755
--- a/keystone/backends/sqlalchemy/__init__.py
+++ b/keystone/backends/sqlalchemy/__init__.py
@@ -31,10 +31,6 @@ import keystone.backends.models as top_models
_DRIVER = None
-# TODO(dolph): these should be computed dynamically
-MODEL_PREFIX = 'keystone.backends.sqlalchemy.models.'
-API_PREFIX = 'keystone.backends.sqlalchemy.api.'
-
class Driver():
def __init__(self, options):
@@ -63,13 +59,15 @@ class Driver():
tables = []
for model in model_list:
- module = utils.import_module(MODEL_PREFIX + model)
+ model_path = '.'.join([__package__, 'models', model])
+ module = utils.import_module(model_path)
tables.append(module.__table__)
top_models.set_value(model, module)
if module.__api__ is not None:
- api_module = utils.import_module(API_PREFIX + module.__api__)
+ api_path = '.'.join([__package__, 'api', module.__api__])
+ api_module = utils.import_module(api_path)
top_api.set_value(module.__api__, api_module.get())
tables_to_create = []