class XMLBaseRequestDecoder(xml.Decoder): object_class = BaseRequest service = xml.Parameter("@service", type=upper, num="?") version = xml.Parameter("@version", type=Version.from_str, num="?") request = xml.Parameter("local-name()") accept_versions = xml.Parameter( "*[local-name()='AcceptVersions']/*[local-name()='Version']/text()", type=Version.from_str, num="*", default_factory=list)
class XMLExecuteDecoder(xml.Decoder): object_class = ExecuteRequest version = xml.Parameter("@version", type=Version.from_str, num=1) process_id = xml.Parameter("ows:Identifier/text()", num=1) mode = xml.Parameter('@mode', type=ExecutionMode, num=1) response = xml.Parameter('@response', type=ResponseType, num=1) inputs = xml.Parameter('wps:Input', type=parse_data_input, num='*') output_definitions = xml.Parameter('wps:Output', type=parse_output_def, num='+') namespaces = nsmap
class XMLReferenceDecoder(xml.Decoder): object_class = Reference href = xml.Parameter('@xlink:href', num='?') body = xml.Parameter('wps:Body', type=parse_reference_body, num='?') body_reference_href = xml.Parameter('wps:BodyReference/@xlink:href', num='?') mime_type = xml.Parameter('@mimeType', num='?') encoding = xml.Parameter('@encoding', num='?') schema = xml.Parameter('@schema', num='?') namespaces = nsmap
class XMLGetCapabilitiesDecoder(xml.Decoder): object_class = GetCapabilitiesRequest service = xml.Parameter("@service") sections = xml.Parameter("ows:Sections/ows:Section/text()", num="*", default_factory=list) update_sequence = xml.Parameter("@updateSequence", num="?") accept_versions = xml.Parameter("ows:AcceptVersions/ows:Version/text()", num="*", default_factory=list) accept_formats = xml.Parameter("ows:AcceptFormats/ows:OutputFormat/text()", num="*", default_factory=list) accept_languages = xml.Parameter("ows:AcceptLanguages/ows:Language/text()", num="*", default_factory=list) namespaces = nsmap
class XMLOutputDefinitionDecoder(xml.Decoder): object_class = OutputDefinition identifier = xml.Parameter('@id', num=1) output_definitions = xml.Parameter('wps:Output', type=parse_output_def, num='*') mime_type = xml.Parameter('@mimeType', num='?') encoding = xml.Parameter('@encoding', num='?') schema = xml.Parameter('@schema', num='?') transmission = xml.Parameter('@transmission', type=TransmissionType, num='?') namespaces = nsmap def map_params(self, params): if not params['output_definitions']: params['output_definitions'] = None return params
class XMLDataDecoder(xml.Decoder): mime_type = xml.Parameter('@mimeType', num='?') encoding = xml.Parameter('@encoding', num='?') schema = xml.Parameter('@schema', num='?')
class XMLDescribeProcessDecoder(xml.Decoder): object_class = DescribeProcessRequest version = xml.Parameter("@version", type=Version.from_str, num=1) process_ids = xml.Parameter("ows:Identifier/text()", num="+") namespaces = nsmap
class XMLDismissDecoder(xml.Decoder): object_class = DismissRequest version = xml.Parameter("@version", type=Version.from_str, num=1) job_id = xml.Parameter("wps:JobID/text()", num=1) namespaces = nsmap
class XMLInputDecoder(xml.Decoder): identifier = xml.Parameter('@id', num=1) data = xml.Parameter('wps:Data', type=parse_data, num='?') reference = xml.Parameter('wps:Reference', type=parse_reference, num='?') inputs = xml.Parameter('wps:Input', type=parse_data_input, num='*') namespaces = nsmap
class XMLDescribeCoverageDecoder(xml.Decoder): object_class = types.DescribeCoverageRequest version = xml.Parameter("@version", type=Version.from_str, num=1) coverage_ids = xml.Parameter("wcs:CoverageId/text()", num="+") namespaces = nsmap
class XMLGetCoverageDecoder(GetCoverageBaseDecoder, xml.Decoder): version = xml.Parameter("@version", type=Version.from_str, num=1) coverage_id = xml.Parameter("wcs:CoverageId/text()", num=1, locator="coverageid") subsets = xml.Parameter("wcs:DimensionTrim", type=parse_subset_xml, num="*", default_factory=list, locator="subset") scalefactor = xml.Parameter( "wcs:Extension/scal:ScaleByFactor/scal:scaleFactor/text()", type=float, num="?", locator="scalefactor") scaleaxes = xml.Parameter( "wcs:Extension/scal:ScaleByAxesFactor/scal:ScaleAxis", type=parse_scaleaxis_xml, num="*", default_factory=list, locator="scaleaxes") scalesize = xml.Parameter( "wcs:Extension/scal:ScaleToSize/scal:TargetAxisSize", type=parse_scalesize_xml, num="*", default_factory=list, locator="scalesize") scaleextent = xml.Parameter( "wcs:Extension/scal:ScaleToExtent/scal:TargetAxisExtent", type=parse_scaleextent_xml, num="*", default_factory=list, locator="scaleextent") rangesubset = xml.Parameter("wcs:Extension/rsub:RangeSubset", type=parse_range_subset_xml, num="?", locator="rangesubset") format = xml.Parameter("wcs:format/text()", num="?", locator="format") subsettingcrs = xml.Parameter("wcs:Extension/crs:subsettingCrs/text()", num="?", locator="subsettingcrs") outputcrs = xml.Parameter("wcs:Extension/crs:outputCrs/text()", num="?", locator="outputcrs") mediatype = xml.Parameter("wcs:mediaType/text()", num="?", locator="mediatype") interpolation = xml.Parameter( "wcs:Extension/int:Interpolation/int:globalInterpolation/text()", num="?", locator="interpolation") geotiff_compression = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:compression/text()", num="?", type=compression_enum, locator="geotiff:compression") geotiff_jpeg_quality = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:jpeg_quality/text()", num="?", type=int, locator="geotiff:jpeg_quality") geotiff_predictor = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:predictor/text()", num="?", type=predictor_enum, locator="geotiff:predictor") geotiff_interleave = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:interleave/text()", num="?", type=interleave_enum, locator="geotiff:interleave") geotiff_tiling = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:tiling/text()", num="?", type=boolean, locator="geotiff:tiling") geotiff_tileheight = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:tileheight/text()", num="?", type=parse_multiple_16, locator="geotiff:tileheight") geotiff_tilewidth = xml.Parameter( "wcs:Extension/geotiff:parameters/geotiff:tilewidth/text()", num="?", type=parse_multiple_16, locator="geotiff:tilewidth") namespaces = nsmap