Merge commit 'cfaf67010017eab368216aded483a64126dbcb2e' as 'bahn/wissensdatenbank'
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
"""Basis-Interface fuer alle Connectors."""
|
||||
from __future__ import annotations
|
||||
|
||||
from abc import ABC, abstractmethod
|
||||
|
||||
from ..model import Document, Source, Tool
|
||||
|
||||
|
||||
class Connector(ABC):
|
||||
"""Ein Connector holt fuer eine Quelle 0..n Dokumente."""
|
||||
|
||||
name: str = "base"
|
||||
|
||||
@abstractmethod
|
||||
def fetch(self, source: Source, tool: Tool | None) -> list[Document]:
|
||||
"""Holt Rohdaten und liefert (noch ungefilterte) Dokumente.
|
||||
|
||||
tool ist None bei tool-uebergreifenden 'general'-Quellen.
|
||||
Bei Fehlern (z.B. fehlende Credentials) sollte eine leere Liste
|
||||
zurueckgegeben und geloggt werden, damit der lokale Lauf nicht bricht.
|
||||
"""
|
||||
raise NotImplementedError
|
||||
Reference in New Issue
Block a user