:mod:`magpie.owsrequest` ======================== .. py:module:: magpie.owsrequest .. autoapi-nested-parse:: The OWSRequest is based on pywps code: * https://github.com/geopython/pywps/tree/pywps-3.2/pywps/Parser * https://github.com/geopython/pywps/blob/master/pywps/app/WPSRequest.py Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: magpie.owsrequest.OWSParser magpie.owsrequest.WPSGet magpie.owsrequest.WPSPost magpie.owsrequest.MultiFormatParser Functions ~~~~~~~~~ .. autoapisummary:: magpie.owsrequest.ows_parser_factory magpie.owsrequest.lxml_strip_ns .. data:: LOGGER .. function:: ows_parser_factory(request: Request) -> OWSParser Retrieve the appropriate ``OWSParser`` parser using the ``Content-Type`` header. If the ``Content-Type`` header is missing or 'text/plain', and the request has a body, try to parse the body as JSON and set the content-type to 'application/json'. 'application/x-www-form-urlencoded' ``Content-Type`` header is also handled correctly. Otherwise, use the GET/POST WPS parsers. .. py:class:: OWSParser(request) Bases: :class:`object` Initialize self. See help(type(self)) for accurate signature. .. method:: parse(self, param_list) .. method:: _get_param_value(self, param) :abstractmethod: .. py:class:: WPSGet(request) Bases: :class:`magpie.owsrequest.OWSParser` Basically a case-insensitive query string parser. Initialize self. See help(type(self)) for accurate signature. .. method:: _request_params(self) .. method:: _get_param_value(self, param) .. function:: lxml_strip_ns(tree) .. py:class:: WPSPost(request) Bases: :class:`magpie.owsrequest.OWSParser` Initialize self. See help(type(self)) for accurate signature. .. method:: _get_param_value(self, param) .. py:class:: MultiFormatParser(request) Bases: :class:`magpie.owsrequest.OWSParser` Initialize self. See help(type(self)) for accurate signature. .. method:: _get_param_value(self, param)