Table of Contents

Class LocalOperatorRegistry

Namespace
Zedal.Sdk.Apis.Diwass.Local
Assembly
Zedal.Sdk.dll

In-Memory-Speicher für lokal verwaltete Operatoren. Vergibt synthetische InternalIDs (negative longs, monoton fallend ab -1), die nicht mit echten DIWASS-IDs (positiv) kollidieren. Pro Doc-Kontext ist Eindeutigkeit garantiert; über Doc-Grenzen hinweg ist sie nicht versprochen, wird aber durch den Counter de facto erreicht.

public sealed class LocalOperatorRegistry
Inheritance
LocalOperatorRegistry
Inherited Members

Properties

All

Snapshot aller registrierten Operatoren.

Methods

Add(LocalOperatorInput)

Hängt einen lokal verwalteten Operator an die Registry an und liefert die zugewiesene synthetische InternalID. Die ID ist negativ; der Aufrufer setzt sie unverändert auf die OperatorInternalID-Felder der Beteiligten im Doc.

FindByIdentifier(string, OperatorIdentifierType)
FindByName(string, string, int)
FindByQuery(string, string, int)
FindForEori(string)
LoadFromDocXml(byte[])

Re-hydratisiert die Registry aus den im DocXml hinterlegten synthetischen GetOperatorResponse-Blocks. Notwendig, wenn ein gespeichertes Doc oder ein Template wieder geladen wird und die bereits vergebenen negativen InternalIDs erhalten bleiben müssen.

Erkannt werden ausschließlich Operator-Einträge mit negativer internalID — echte DIWASS-Operatoren (positive IDs) sind kein Registry-Stoff. Bereits in der Registry vorhandene IDs werden übersprungen, der Aufruf ist also idempotent. Der ID-Counter wird hinter die kleinste geladene ID gezogen.

Liefert die Anzahl tatsächlich neu geladener Operatoren.

Remove(long)

Entfernt einen Eintrag. Liefert true, wenn die ID gefunden wurde.

TryGet(long)

Nachschlagen per InternalID. null wenn nicht registriert.