singer_sdk.singerlib.catalog.MetadataMapping

class singer_sdk.singerlib.catalog.MetadataMapping[source]

Stream metadata mapping.

classmethod from_iterable(iterable)[source]

Create a metadata mapping from an iterable of metadata dictionaries.

Parameters:

iterable (Iterable[dict[str, Any]]) – t.Iterable of metadata dictionaries.

Returns:

Metadata mapping.

Return type:

MetadataMapping

classmethod get_standard_metadata(*, schema=None, schema_name=None, key_properties=None, valid_replication_keys=None, replication_method=None, selected_by_default=None)[source]

Get default metadata for a stream.

Parameters:
  • schema (dict[str, Any] | None) – Stream schema.

  • schema_name (str | None) – Stream schema name.

  • key_properties (Sequence[str] | None) – Stream key properties.

  • valid_replication_keys (list[str] | None) – Stream valid replication keys.

  • replication_method (str | None) – Stream replication method.

  • selected_by_default (bool | None) – Whether the stream is selected by default.

Returns:

Metadata mapping.

Return type:

MetadataMapping

resolve_selection()[source]

Resolve selection for metadata breadcrumbs and store them in a mapping.

Returns:

Selection mask.

Return type:

SelectionMask

to_list()[source]

Convert mapping to a JSON-encodable list.

Returns:

List of metadata dictionaries.

Return type:

list[dict[str, Any]]

property root: StreamMetadata[source]

Get stream (root) metadata from this mapping.

Returns:

Stream metadata.