libredte_lib_sdk.response_registry module
Registro de las clases de respuesta de la API y el DTO que las representa.
La API informa en meta.data_type la clase PHP de cada resultado. Cada DTO declara la suya con @api_response(…), junto a su from_api(): así la clase PHP queda a la vista donde se define el DTO, y el servicio no decide qué DTO usar, lo decide la respuesta.
Este módulo no importa ningún DTO (se registran ellos aquí), para no crear ciclos de importación.
- libredte_lib_sdk.response_registry.api_response(php_class: str) Callable[[type[_Dto]], type[_Dto]]
Registra el DTO decorado como representante de una clase PHP de la API.
php_class es el nombre completo de la clase, tal como llega en meta.data_type.
- libredte_lib_sdk.response_registry.build_response(expected: type[_Dto], response: ApiResponse) _Dto
Construye el DTO de una respuesta, según la clase que informó la API.
expected es el DTO que el servicio espera devolver: no elige el DTO (lo elige response.data_type), solo verifica que coincida y tipa el resultado.
- Muestra:
LibreDteUnmappedResponseError – Si la clase de la respuesta no tiene DTO registrado o es distinta de la esperada.