for _name, hooks in self._model_query_hooks.get(model,
{}).iteritems():
query_hook = hooks.get('query')
- filter_hook = hooks.get('filter')
+ if isinstance(query_hook, basestring):
+ query_hook = getattr(self, query_hook, None)
if query_hook:
- query = query_hook(self, context, model, query)
+ query = query_hook(context, model, query)
+
+ filter_hook = hooks.get('filter')
+ if isinstance(filter_hook, basestring):
+ filter_hook = getattr(self, filter_hook, None)
if filter_hook:
- query_filter = filter_hook(self, context, model, query_filter)
+ query_filter = filter_hook(context, model, query_filter)
# NOTE(salvatore-orlando): 'if query_filter' will try to evaluate the
# condition, raising an exception
for _name, hooks in self._model_query_hooks.get(model,
{}).iteritems():
result_filter = hooks.get('result_filters', None)
+ if isinstance(result_filter, basestring):
+ result_filter = getattr(self, result_filter, None)
+
if result_filter:
- query = result_filter(self, query, filters)
+ query = result_filter(query, filters)
return query
def _get_collection_query(self, context, model, filters=None,
db_base_plugin_v2.NeutronDbPluginV2.register_model_query_hook(
models_v2.Network,
"external_net",
- _network_model_hook,
- _network_filter_hook,
- _network_result_filter_hook)
+ '_network_model_hook',
+ '_network_filter_hook',
+ '_network_result_filter_hook')
def _get_router(self, context, id):
try: