in mapillary_tools/process_import_meta_properties.py [0:0]
def add_meta_tag(desc: MetaProperties, tag_type: str, key: str, value_before) -> None:
META_DATA_TYPES = {
"strings": str,
"doubles": float,
"longs": int,
"dates": int,
"booleans": bool,
}
type_ = META_DATA_TYPES.get(tag_type)
if type_ is None:
raise exceptions.MapillaryBadParameterError(f"Invalid tag type: {tag_type}")
try:
value = type_(value_before)
except (ValueError, TypeError) as ex:
raise exceptions.MapillaryBadParameterError(
f'Unable to parse "{key}" in the custom metatags as {tag_type}'
) from ex
meta_tag = {"key": key, "value": value}
tags = desc.setdefault("MAPMetaTags", {})
tags.setdefault(tag_type, []).append(meta_tag)