SPB Git forge

spb/job-ka

Public
229commits 1branches 0releases
38.1 MBsize
maindefault branch
5 h agolast push
HTML 82.1% Python 14.6% TypeScript 1.9% CSS 1% JavaScript 0.5%
1.3 KB · 33 lines python
Raw Blame History
1# =============================================================================2# Job·Ka — Groupe KA3# Auteur  : Simon-Pierre Boucher4# Contact : contact@spboucher.ai5# Fichier : jobka/connectors/__init__.py6# Rôle    : Registre AUTO-DÉCOUVRANT des connecteurs — toute sous-classe de7#           BaseConnector avec un source_id non vide est enregistrée, aucun8#           fichier partagé à modifier pour ajouter un connecteur9# Créé    : 2026-08-17   Modifié : 2026-08-1710# =============================================================================11from __future__ import annotations1213import importlib14import pkgutil15import sys1617from .base import BaseConnector1819CONNECTORS: dict[str, type[BaseConnector]] = {}2021for _mod in pkgutil.iter_modules(__path__):22    if _mod.name in ("base", "__init__"):23        continue24    try:25        module = importlib.import_module(f"{__name__}.{_mod.name}")26    except Exception as exc:  # un connecteur cassé ne bloque pas les autres27        print(f"[job-ka] connecteur '{_mod.name}' ignoré : {exc}", file=sys.stderr)28        continue29    for obj in vars(module).values():30        if (isinstance(obj, type) and issubclass(obj, BaseConnector)31                and obj is not BaseConnector and getattr(obj, "source_id", "")):32            CONNECTORS[obj.source_id] = obj33