Class OperatorPullService
Schickt einen getOperator-SOAP-Request für eine Liste interner Operator-IDs an
DIWASS und hängt die Antwort als BxA-Block an ein bestehendes Zewass-DocXml an.
Temporäre Lösung: langfristig soll das der ZEDAL-Server intern beim
Notification-Push selbst tun. Bis dahin bauen wir den SOAP-Body clientseitig
(Vorlage: diwass-specification/XML Samples/old/[SAMPLE] getOperatorRequest.xml)
und schicken ihn via SoapProxy. Die rohe SOAP-Antwort geht ungefiltert in den
AddBlock-Call — analog zu den anderen Lifecycle-Push-Responses.
public sealed class OperatorPullService : DiwassPullServiceBase
- Inheritance
-
OperatorPullService
- Inherited Members
Constructors
Properties
- Kind
Kurzform für Dump-Dateinamen und Identifier-Arg-Name, z.B.
notification.
- OperationName
DIWASS-Operationsname für Fehlermeldungen, z.B.
getNotification.
- ResponseRootLocalName
Erwarteter lokaler Root-Name in der SOAP-Antwort, z.B.
GetNotificationResponse.
- ResponseRootNamespace
XML-Namespace, in dem das Antwort-Root-Element erwartet wird. Default ist der Retrieval-Namespace (getNotification/getMovement/getAnnex7); Side-Channel- Operationen wie
getOperatorüberschreiben das mit ihrem Directory-Namespace.
Methods
- AppendOperatorLookupAsync(byte[], IEnumerable<long>, WhitespaceHandling)
Hängt einen
GetOperatorResponse-Block für die gegebenen Operator-IDs an das übergebene DocXml an. Liefert das aktualisierte BxA-DiwassOperationResult, sodass der Aufrufer den Handler-State (DocXml/Document/FollowupIntents) auffrischen kann.
- BuildRequestBodyXml(string)
Baut den SOAP-Body für den konkreten Pull-Request.
- EmbedOperatorsAsync(byte[], WhitespaceHandling)
Reichert ein ZEWASS-DocXml um den
GetOperatorResponse-Block an, der für die im Dokument referenziertenOperatorInternalIDs gehört. Idempotent — ist bereits einGetOperatorResponsevorhanden oder enthält das Doc keine Operator-IDs, wird das Original unverändert zurückgegeben.Same Logik wie der automatische Side-Channel-Pull in PullAsDocXmlCore(string) für Notifications/Movements, aber ohne vorherigen Lifecycle-Pull — gedacht für Aufrufer, die das DocXml anders erzeugt haben (z.B. lokal über
CreateAnnex7) und es trotzdem vor dem PDF-Render mit Operator-Details auffüllen wollen.
- NormalizeResponseXml(string, WhitespaceHandling)
Normalisiert die Whitespaces in den Textwerten aller Blatt-Elemente der getOperator-Antwort gemäß
whitespace(Operator-Stammdaten kommen aus DIWASS häufig mit Padding-Whitespaces). Die XML-Struktur bleibt unangetastet — nur Textinhalte von Elementen ohne Kindelemente werden angefasst, Attributwerte nicht.