]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
API Extensions: inherit from the ExtensionDescriptor
authorSean M. Collins <sean@coreitpro.com>
Mon, 15 Jun 2015 17:51:05 +0000 (13:51 -0400)
committerSean M. Collins <sean@coreitpro.com>
Mon, 15 Jun 2015 20:10:36 +0000 (16:10 -0400)
For consistency in the codebase, API extensions should inherit from the
abstract base class ExtensionDescriptor.

Change-Id: Id4829c265866e80c042c433bebcc01383e1e7417

15 files changed:
neutron/api/extensions.py
neutron/extensions/agent.py
neutron/extensions/allowedaddresspairs.py
neutron/extensions/dvr.py
neutron/extensions/extraroute.py
neutron/extensions/portsecurity.py
neutron/extensions/routerservicetype.py
neutron/plugins/nec/extensions/router_provider.py
neutron/plugins/vmware/extensions/advancedserviceproviders.py
neutron/plugins/vmware/extensions/lsn.py
neutron/plugins/vmware/extensions/maclearning.py
neutron/plugins/vmware/extensions/networkgw.py
neutron/plugins/vmware/extensions/qos.py
neutron/plugins/vmware/extensions/routertype.py
neutron/plugins/vmware/extensions/vnicindex.py

index f6b4601ba2157a50d936c62c6973ab21bb8bea51..5476157fc2de4aec329ddaafa1c87295b680f9ee 100644 (file)
@@ -63,12 +63,9 @@ class PluginInterface(object):
         return True
 
 
+@six.add_metaclass(abc.ABCMeta)
 class ExtensionDescriptor(object):
-    """Base class that defines the contract for extensions.
-
-    Note that you don't have to derive from this class to have a valid
-    extension; it is purely a convenience.
-    """
+    """Base class that defines the contract for extensions."""
 
     def get_name(self):
         """The name of the extension.
index 4dee27c6ed73e9ca584fcd94b994d384db53376f..c2fab0bccaf4481749044466249abcbc127f7690 100644 (file)
@@ -71,7 +71,7 @@ class MultipleAgentFoundByTypeHost(exceptions.Conflict):
                 "host=%(host)s found")
 
 
-class Agent(object):
+class Agent(extensions.ExtensionDescriptor):
     """Agent management extension."""
 
     @classmethod
index 2e618eef2496f6cfa7632a22cd826b52beeca5a2..765f6ff1bd3505247187bd8894b696255179437c 100644 (file)
@@ -14,6 +14,7 @@
 
 import webob.exc
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes as attr
 from neutron.common import exceptions as nexception
 from oslo_config import cfg
@@ -102,7 +103,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Allowedaddresspairs(object):
+class Allowedaddresspairs(extensions.ExtensionDescriptor):
     """Extension class supporting allowed address pairs."""
 
     @classmethod
index bb5720e9dad065ae8a62792e265653529f340d7b..4d415245f9b222313d8464272db083657bef88a8 100644 (file)
@@ -16,6 +16,7 @@ import abc
 
 import six
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 from neutron.common import constants
 from neutron.common import exceptions
@@ -42,7 +43,7 @@ class MacAddressGenerationFailure(exceptions.ServiceUnavailable):
     message = _("Unable to generate unique DVR mac for host %(host)s.")
 
 
-class Dvr(object):
+class Dvr(extensions.ExtensionDescriptor):
     """Extension class supporting distributed virtual router."""
 
     @classmethod
index 2e6916c601a1e966139c7e2e2bfddff7d70b1278..38f386149b9a17cfb2cb4cf3ec6ea2644597926d 100644 (file)
@@ -13,7 +13,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-
+from neutron.api import extensions
 from neutron.api.v2 import attributes as attr
 from neutron.common import exceptions as nexception
 
@@ -44,7 +44,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Extraroute(object):
+class Extraroute(extensions.ExtensionDescriptor):
 
     @classmethod
     def get_name(cls):
index 68663f9e16cc042809e51954ecbb7e236ea68c14..0a9b17e29e51ec7803d69ae01fd459271d701205 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 from neutron.common import exceptions as nexception
 
@@ -48,7 +49,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Portsecurity(object):
+class Portsecurity(extensions.ExtensionDescriptor):
     """Extension class supporting port security."""
 
     @classmethod
index cce9cf85d3315893cd88194a3f52b60f4ff6475b..8a131b23e81d2cdec23d02bf10ad6fd9c5db5355 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 
 SERVICE_TYPE_ID = 'service_type_id'
 EXTENDED_ATTRIBUTES_2_0 = {
@@ -23,7 +24,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Routerservicetype(object):
+class Routerservicetype(extensions.ExtensionDescriptor):
     """Extension class supporting router service type."""
 
     @classmethod
index 5098a47fda030e59870f9d577ddc75f86c9c3ea2..e37f6b8734fff6371e560397b333674544894c7c 100644 (file)
@@ -14,6 +14,7 @@
 
 from oslo_log import log as logging
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 
 
@@ -31,7 +32,7 @@ ROUTER_PROVIDER_ATTRIBUTE = {
 }
 
 
-class Router_provider(object):
+class Router_provider(extensions.ExtensionDescriptor):
     @classmethod
     def get_name(cls):
         return "Router Provider"
index ba6203639645f5618eb647da395f987be93520a3..4c15522740322bc7173b9c069a82c7efd5fa717c 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 
 # Attribute Map
 ADV_SERVICE_PROVIDERS = 'advanced_service_providers'
@@ -26,7 +27,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
          'default': None}}}
 
 
-class Advancedserviceproviders(object):
+class Advancedserviceproviders(extensions.ExtensionDescriptor):
     @classmethod
     def get_name(cls):
         return "Advanced Service Providers"
index 4a7d3ca3da59825faa06d811a4626450eec11243..8887c2951d5c334f40f2d66ecbf93623134f3429 100644 (file)
@@ -37,7 +37,7 @@ RESOURCE_ATTRIBUTE_MAP = {
 }
 
 
-class Lsn(object):
+class Lsn(extensions.ExtensionDescriptor):
     """Enable LSN configuration for Neutron NSX networks."""
 
     @classmethod
index 21c669150857dc9cf89d4d24537c5e957da776c2..b18f02e087142253a7c2e04fb8436b6c7d6f70a1 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 
 
@@ -26,7 +27,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Maclearning(object):
+class Maclearning(extensions.ExtensionDescriptor):
     """Extension class supporting port mac learning."""
 
     @classmethod
index 1e9bc2ace6f7b499270c698454aab3d1b81e077f..b46ff01eb5a6108d37b60aa5ce3fcf797ed8165b 100644 (file)
@@ -17,6 +17,7 @@ import abc
 
 from oslo_config import cfg
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 from neutron.api.v2 import resource_helper
 
@@ -149,7 +150,7 @@ attributes.validators['type:device_list'] = _validate_device_list
 attributes.validators['type:connector_type'] = _validate_connector_type
 
 
-class Networkgw(object):
+class Networkgw(extensions.ExtensionDescriptor):
     """API extension for Layer-2 Gateway support.
 
     The Layer-2 gateway feature allows for connecting neutron networks
index 30e6f8c7d023acc095774ccfa4027dfc776394e1..e1e5710b71c3ce6eaad573eb1b377b35f5a4f99f 100644 (file)
@@ -161,7 +161,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Qos(object):
+class Qos(extensions.ExtensionDescriptor):
     """Port Queue extension."""
 
     @classmethod
index ba7c831a23db911513c10ecd47f4713904e8218f..02f09bc202aa2a4013de09e932b3eb4ae94f08dc 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 
 
@@ -26,7 +27,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
 }
 
 
-class Routertype(object):
+class Routertype(extensions.ExtensionDescriptor):
     """Extension class supporting router type."""
 
     @classmethod
index 9b0e6d05ce65040e759b7f5054dbf417f8bc64a1..76dda33a7dcadc937cc6b4b422389bacc7937200 100644 (file)
@@ -12,6 +12,7 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+from neutron.api import extensions
 from neutron.api.v2 import attributes
 
 # Attribute Map
@@ -28,7 +29,7 @@ EXTENDED_ATTRIBUTES_2_0 = {
          'convert_to': attributes.convert_to_int_if_not_none}}}
 
 
-class Vnicindex(object):
+class Vnicindex(extensions.ExtensionDescriptor):
     @classmethod
     def get_name(cls):
         return "VNIC Index"