]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
common_db_mixin.py: simplify CommonDbMixin
authorIsaku Yamahata <isaku.yamahata@intel.com>
Mon, 22 Sep 2014 03:05:13 +0000 (12:05 +0900)
committerIsaku Yamahata <isaku.yamahata@intel.com>
Tue, 20 Jan 2015 01:53:04 +0000 (17:53 -0800)
Simplfy register_model_query_hook() and register_dict_extend_funcs().
Move register_dict_extend_funcs() into CommonDbMixin attribute
because the related class attribute, _dict_extend_functions, is
defined in CommonDbMixin. They should be defined in same class.

Change-Id: Ib7b6df0c236f1d0804941147cc7cd7902a611311

neutron/db/common_db_mixin.py
neutron/db/db_base_plugin_v2.py

index 6d93c17b9bdf3409507623e5042a8f0b193384be..d41bb8e557d6083cec4624ca295259b44ef3ac67 100644 (file)
@@ -52,13 +52,13 @@ class CommonDbMixin(object):
         Filter hooks take as input the filter expression being built and return
         a transformed filter expression
         """
-        model_hooks = cls._model_query_hooks.get(model)
-        if not model_hooks:
-            # add key to dict
-            model_hooks = {}
-            cls._model_query_hooks[model] = model_hooks
-        model_hooks[name] = {'query': query_hook, 'filter': filter_hook,
-                             'result_filters': result_filters}
+        cls._model_query_hooks.setdefault(model, {})[name] = {
+            'query': query_hook, 'filter': filter_hook,
+            'result_filters': result_filters}
+
+    @classmethod
+    def register_dict_extend_funcs(cls, resource, funcs):
+        cls._dict_extend_functions.setdefault(resource, []).extend(funcs)
 
     @property
     def safe_reference(self):
index e68d90ecbf357d938047d645a0bad1e509055025..3c0fbb00c93076ab525f97dd696aeaa05704b53a 100644 (file)
@@ -82,12 +82,6 @@ class NeutronDbPluginV2(neutron_plugin_base_v2.NeutronPluginBaseV2,
             event.listen(models_v2.Port.status, 'set',
                          self.nova_notifier.record_port_status_changed)
 
-    @classmethod
-    def register_dict_extend_funcs(cls, resource, funcs):
-        cur_funcs = cls._dict_extend_functions.get(resource, [])
-        cur_funcs.extend(funcs)
-        cls._dict_extend_functions[resource] = cur_funcs
-
     def _get_network(self, context, id):
         try:
             network = self._get_by_id(context, models_v2.Network, id)