# ----------------------------------------------------------------------------- # Immo-Ka — Agrégateur de maisons à vendre (province de Québec) # Auteur : Simon-Pierre Boucher — contact@spboucher.ai # mortgage/providers/ : un connecteur indépendant par institution financière. # Auto-découverte : tout module du dossier définissant une sous-classe de # RateProvider avec provider_id non vide est enregistré automatiquement # (même mécanique que immoka/connectors/). # ----------------------------------------------------------------------------- from __future__ import annotations import importlib import pkgutil from .base import RateProvider PROVIDERS: dict[str, type[RateProvider]] = {} for _mod in pkgutil.iter_modules(__path__): if _mod.name.startswith("_") or _mod.name == "base": continue module = importlib.import_module(f".{_mod.name}", __name__) for obj in vars(module).values(): if (isinstance(obj, type) and issubclass(obj, RateProvider) and obj is not RateProvider and obj.provider_id): PROVIDERS[obj.provider_id] = obj