Interface IInboxImporter
- Namespace
- Zedal.Sdk.DocumentHandler.InboxSync
- Assembly
- Zedal.Sdk.dll
Übernimmt Einträge aus der ZEDAL-Inbox in den lokalen Bestand. Nutzt ListInboxDocuments(QueryParameter) für serverseitiges Type-Filtern und delegiert pro Eintrag an die passende IDocumentApi-Import-Methode.
public interface IInboxImporter
Remarks
Default ist konservativ: Inbox-Einträge werden nur dann aus der Inbox entfernt,
wenn der Import erfolgreich war. Fehlgeschlagene Einträge bleiben stehen und
tauchen in Failed auf — der Aufrufer kann sie
loggen, untersuchen und bei Bedarf gezielt per
RemoveDocumentsFromInbox(IEnumerable<DocumentId>) wegräumen
(CLI: zedalctl document remove-from-inbox).
Hintergrund: Eine Quarantäne-Ablage ist im ZEDAL-Backend aktuell nicht abbildbar.
Pauschales Entfernen bei Fehler war bis dahin Default; ein Mode-Mismatch
(z.B. Transport-Import auf eine Notification-Inbox) hat damit auch intakte
Einträge gelöscht. Wer das alte Verhalten braucht (z.B. Daemon, der defekte
Einträge nicht jeden Lauf erneut versuchen soll), kann removeOnFailure: true
setzen.
Methods
- ImportAsTransportAsync(IEnumerable<string>, int, bool, CancellationToken)
Übernimmt Inbox-Einträge per ImportTransportDocumentFromInbox(DocumentId, bool, bool).
- ImportToFileAreaAsync(IEnumerable<string>, PrivacyLevel, int, bool, CancellationToken)
Übernimmt Inbox-Einträge in den File-Area-Bereich (Nachweis-Akten) per ImportDocumentToFileAreaFromInbox(DocumentId, PrivacyLevel). Ziel-Akte wird vom Server bestimmt (vorhandene passende Akte oder Neuanlage).
- ListPendingAsync(IEnumerable<string>, int, CancellationToken)
Listet die Inbox-Einträge auf, die als nächstes von
ImportAsTransportAsyncbzw.ImportToFileAreaAsyncverarbeitet würden. Reine Peek-Operation — nichts wird konsumiert oder verändert. Wendet denselben Filter an wie die Import-Methoden (removed = false, optionaldocument_type IN [...]).