From: Tomoe Sugihara Date: Mon, 18 Feb 2013 06:24:55 +0000 (+0900) Subject: Fix SG interface to reflect the reality X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=434534652d8f350cd3419605b8d8d22b078727b1;p=openstack-build%2Fneutron-build.git Fix SG interface to reflect the reality The signitures of abstract methods in SecurityGroupPluginBase has diverged from db mixin implementation. This patch updates the methods to fix the divergence, mainly by removing update method from the base. Note that there's an issue for missing update(bug #1124865). Fixes: bug #1119080 Change-Id: I6631b86ab2fdf4b81ad575e9a8f92dfe041ffe9a Signed-off-by: Tomoe Sugihara --- diff --git a/quantum/db/securitygroups_db.py b/quantum/db/securitygroups_db.py index 7eba36cf5..529563060 100644 --- a/quantum/db/securitygroups_db.py +++ b/quantum/db/securitygroups_db.py @@ -398,11 +398,11 @@ class SecurityGroupDbMixin(ext_sg.SecurityGroupPluginBase): raise ext_sg.SecurityGroupRuleNotFound(id=id) return sgr - def delete_security_group_rule(self, context, sgrid): + def delete_security_group_rule(self, context, id): if (cfg.CONF.SECURITYGROUP.proxy_mode and not context.is_admin): raise ext_sg.SecurityGroupProxyModeNotAdmin() with context.session.begin(subtransactions=True): - rule = self._get_security_group_rule(context, sgrid) + rule = self._get_security_group_rule(context, id) context.session.delete(rule) def _extend_port_dict_security_group(self, context, port): diff --git a/quantum/extensions/securitygroup.py b/quantum/extensions/securitygroup.py index 756c0753c..8dd342e4c 100644 --- a/quantum/extensions/securitygroup.py +++ b/quantum/extensions/securitygroup.py @@ -15,6 +15,7 @@ # License for the specific language governing permissions and limitations # under the License. +from abc import ABCMeta from abc import abstractmethod from quantum.api import extensions @@ -315,16 +316,14 @@ class Securitygroup(extensions.ExtensionDescriptor): class SecurityGroupPluginBase(object): - @abstractmethod - def create_security_group(self, context, security_group): - pass + __metaclass__ = ABCMeta @abstractmethod - def delete_security_group(self, context, security_group): + def create_security_group(self, context, security_group): pass @abstractmethod - def update_security_group(self, context, security_group): + def delete_security_group(self, context, id): pass @abstractmethod @@ -340,7 +339,7 @@ class SecurityGroupPluginBase(object): pass @abstractmethod - def delete_security_group_rule(self, context, sgrid): + def delete_security_group_rule(self, context, id): pass @abstractmethod