summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuzlikeev Eduard <eyuzlikeev@mirantis.com>2013-06-05 13:10:43 +0400
committerYuzlikeev Eduard <eyuzlikeev@mirantis.com>2013-06-14 11:18:36 +0400
commitf458f68bb6d39583cf7aa7b6e10054cacfcb6717 (patch)
tree5b2d7563935a00299da9dcd0fafbafb065110ad2
parenta5f529d24d016d434a7ceb116bfeb9afb1660d06 (diff)
downloadnova-f458f68bb6d39583cf7aa7b6e10054cacfcb6717.tar.gz
nova-f458f68bb6d39583cf7aa7b6e10054cacfcb6717.tar.xz
nova-f458f68bb6d39583cf7aa7b6e10054cacfcb6717.zip
Session cleanup for db.security_group_rule_* methods
Session objects shouldn't be used in public db.api methods because db.api should be independent of db implementation. Remove session parameter from: test_security_group_rule_destroy test_security_group_rule_get test_security_group_rule_get_by_security_group test_security_group_rule_get_by_security_group_grantee blueprint db-session-cleanupRoutine refactor. Change-Id: I36a71547124b655ed89d340fed02315f3b7f1530
-rw-r--r--nova/db/sqlalchemy/api.py50
1 files changed, 23 insertions, 27 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 3160743ed..5c1d44cfe 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -3417,10 +3417,10 @@ def _security_group_rule_get_query(context, session=None):
@require_context
-def security_group_rule_get(context, security_group_rule_id, session=None):
- result = _security_group_rule_get_query(context, session=session).\
- filter_by(id=security_group_rule_id).\
- first()
+def security_group_rule_get(context, security_group_rule_id):
+ result = (_security_group_rule_get_query(context).
+ filter_by(id=security_group_rule_id).
+ first())
if not result:
raise exception.SecurityGroupNotFoundForRule(
@@ -3430,23 +3430,21 @@ def security_group_rule_get(context, security_group_rule_id, session=None):
@require_context
-def security_group_rule_get_by_security_group(context, security_group_id,
- session=None):
- return _security_group_rule_get_query(context, session=session).\
- filter_by(parent_group_id=security_group_id).\
+def security_group_rule_get_by_security_group(context, security_group_id):
+ return (_security_group_rule_get_query(context).
+ filter_by(parent_group_id=security_group_id).
options(joinedload_all('grantee_group.instances.'
- 'system_metadata')).\
- all()
+ 'system_metadata')).
+ all())
@require_context
def security_group_rule_get_by_security_group_grantee(context,
- security_group_id,
- session=None):
+ security_group_id):
- return _security_group_rule_get_query(context, session=session).\
- filter_by(group_id=security_group_id).\
- all()
+ return (_security_group_rule_get_query(context).
+ filter_by(group_id=security_group_id).
+ all())
@require_context
@@ -3459,22 +3457,20 @@ def security_group_rule_create(context, values):
@require_context
def security_group_rule_destroy(context, security_group_rule_id):
- session = get_session()
- with session.begin():
- count = _security_group_rule_get_query(context, session=session).\
- filter_by(id=security_group_rule_id).\
- soft_delete()
- if count == 0:
- raise exception.SecurityGroupNotFoundForRule(
- rule_id=security_group_rule_id)
+ count = (_security_group_rule_get_query(context).
+ filter_by(id=security_group_rule_id).
+ soft_delete())
+ if count == 0:
+ raise exception.SecurityGroupNotFoundForRule(
+ rule_id=security_group_rule_id)
@require_context
def security_group_rule_count_by_group(context, security_group_id):
- return model_query(context, models.SecurityGroupIngressRule,
- read_deleted="no").\
- filter_by(parent_group_id=security_group_id).\
- count()
+ return (model_query(context, models.SecurityGroupIngressRule,
+ read_deleted="no").
+ filter_by(parent_group_id=security_group_id).
+ count())
#
###################