Esempio n. 1
0

#
# Decorators
#
request_search_args = request_parser(from_conf("request_args"),
                                     location="args")

request_view_args = request_parser(from_conf("request_view_args"),
                                   location="view_args")

request_headers = request_parser({"if_match": ma.fields.Int()},
                                 location='headers')

request_data = request_body_parser(
    parsers=from_conf('request_body_parsers'),
    default_content_type=from_conf('default_content_type'))


#
# Resource
#
class VocabulariesResource(RecordResource):
    """Resource for generic vocabularies."""
    @request_search_args
    @request_view_args
    @response_handler(many=True)
    def search(self):
        """Perform a search over the items."""
        hits = self.service.search(
            identity=g.identity,
from ..errors import ErrorHandlersMixin
from .parser import RequestStreamParser

#
# Decorator helpers
#
request_view_args = request_parser(
    {
        'pid_value': ma.fields.Str(required=True),
        'key': ma.fields.Str()
    },
    location='view_args')

request_data = request_body_parser(
    parsers={"application/json": RequestBodyParser(JSONDeserializer())},
    default_content_type="application/json",
)

request_stream = request_body_parser(
    parsers={"application/octet-stream": RequestStreamParser()},
    default_content_type="application/octet-stream",
)


#
# Resource
#
class FileResource(ErrorHandlersMixin, Resource):
    """File resource."""
    def __init__(self, config, service):
        """Constructor."""