The logic for massaging the fields and filters data was being done in the controllers. This change pulls that logic out of the controllers and puts it in a generic hook so that it's done for all controllers. This will later be used for pagination, but thats not the main motivation of this patch. Ideally, the filters and fields would be passed into the controller methods themselves as kwargs, but that is not easily done due to pecan not easily allowing overriding the args and kwargs passed to the controller methods. For now, the fields and filters will have to be pulled out of the request context. Change-Id: Ibea9087c7036faa064b87acb52e09c9a3c74148a
34 lines
1.4 KiB
Python
34 lines
1.4 KiB
Python
# Copyright (c) 2015 Mirantis, Inc.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
from neutron.pecan_wsgi.hooks import body_validation
|
|
from neutron.pecan_wsgi.hooks import context
|
|
from neutron.pecan_wsgi.hooks import notifier
|
|
from neutron.pecan_wsgi.hooks import ownership_validation
|
|
from neutron.pecan_wsgi.hooks import policy_enforcement
|
|
from neutron.pecan_wsgi.hooks import query_parameters
|
|
from neutron.pecan_wsgi.hooks import quota_enforcement
|
|
from neutron.pecan_wsgi.hooks import translation
|
|
|
|
|
|
ExceptionTranslationHook = translation.ExceptionTranslationHook
|
|
ContextHook = context.ContextHook
|
|
BodyValidationHook = body_validation.BodyValidationHook
|
|
OwnershipValidationHook = ownership_validation.OwnershipValidationHook
|
|
PolicyHook = policy_enforcement.PolicyHook
|
|
QuotaEnforcementHook = quota_enforcement.QuotaEnforcementHook
|
|
NotifierHook = notifier.NotifierHook
|
|
QueryParametersHook = query_parameters.QueryParametersHook
|