Source code for id_translation.toml.factories._fetcher

from typing import Any

from rics.misc import get_by_full_name

from id_translation.fetching import AbstractFetcher
from id_translation.types import IdType, SourceType


[docs] def default_fetcher_factory(clazz: str, config: dict[str, Any]) -> AbstractFetcher[SourceType, IdType]: """Create an :class:`.AbstractFetcher` from config.""" from id_translation import fetching as default_module cls = get_by_full_name( clazz, default_module, subclass_of=AbstractFetcher, # type: ignore[type-abstract] # https://github.com/python/mypy/issues/4717 ) return cls(**config)