birdy.client.converters module

Client Converter Module.

class birdy.client.converters.BaseConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: object

check_dependencies()[source]
convert()[source]

To be subclassed.

property data

Return the data from the remote output in memory.

extensions = ()
property file

Return the output Path object. Download from server if not found.

mimetypes = ()
nested = False
priority = None
class birdy.client.converters.GenericConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

convert()[source]

Return raw bytes memory representation.

priority = 0
class birdy.client.converters.GeoJSONConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['json', 'geojson']
mimetypes = ['application/geo+json', 'application/vnd.geo+json']
priority = 2
class birdy.client.converters.GeotiffGdalConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['tiff', 'tif']
mimetypes = ['image/tiff; subtype=geotiff']
priority = 1
class birdy.client.converters.GeotiffRioxarrayConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['tiff', 'tif']
mimetypes = ['image/tiff; subtype=geotiff']
priority = 3
class birdy.client.converters.ImageConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['png']
mimetypes = ['image/png']
priority = 1
class birdy.client.converters.JSONConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

convert()[source]

To be subclassed.

extensions = ['json']
mimetypes = ['application/json']
priority = 1
class birdy.client.converters.MetalinkConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['metalink', 'meta4']
mimetypes = ['application/metalink+xml; version=3.0', 'application/metalink+xml; version=4.0']
nested = True
priority = 1
class birdy.client.converters.Netcdf4Converter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['nc', 'nc4']
mimetypes = ['application/x-netcdf']
priority = 1
class birdy.client.converters.ShpFionaConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

mimetypes = ['application/x-zipped-shp']
priority = 1
class birdy.client.converters.ShpOgrConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['zip']
mimetypes = ['application/x-zipped-shp']
priority = 2
class birdy.client.converters.TextConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

convert()[source]

Return text content.

extensions = ['txt', 'csv', 'md', 'rst']
mimetypes = ['text/plain']
priority = 1
class birdy.client.converters.XarrayConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

check_dependencies()[source]
convert()[source]

To be subclassed.

extensions = ['nc', 'nc4']
mimetypes = ['application/x-netcdf']
priority = 2
class birdy.client.converters.ZipConverter(output: Output = None, path: str | Path | None = None, verify: bool = True)[source]

Bases: BaseConverter

convert()[source]

To be subclassed.

extensions = ['zip']
mimetypes = ['application/zip']
nested = True
priority = 1
birdy.client.converters.all_subclasses(cls: object) set[source]

Return all subclasses of a class.

Parameters

clsobject

Class to find subclasses of.

Returns

set

The set of all subclasses of the given class.

birdy.client.converters.convert(output: Output | Path | str, path: str | Path, converters: Sequence[BaseConverter] | None = None, verify: bool = True)[source]

Convert a file to an object.

Parameters

outputowslib.wps.Output, Path, str

Item to convert to an object.

pathstr, Path

Path on disk where temporary files are stored.

converterssequence of BaseConverter subclasses

Converter classes to search within for a match.

verifybool

Whether to perform verification. Default: True.

Returns

Any

Python object or file’s content as bytes.

birdy.client.converters.find_converter(obj: Output | str | Path, converters: Sequence[BaseConverter]) list[source]

Find converters for a WPS output or a file on disk.

Parameters

objowslib.wps.Output or str or Path

Object to convert.

converterssequence of BaseConverter subclasses

Converter classes to search within for a match.

Returns

list

A list of compatible converters ordered by priority.