SWIFTNet-Client und -Server
SWIFT verwendet die Begriffe Client und Server, um das Senden und Empfangen zu beschreiben. Ein SWIFT-Client ist ein Prozess, der swiftNet Link (SNL) aufruft, um die Kommunikation über SWIFTNet zu initiieren. In BizTalk Server wird dies als Sendeadapter bezeichnet. Ein SWIFT-Server ist ein Programm, das von der SNL aufgerufen wird, wenn Datenverkehr über SWIFTNet eingeht. In BizTalk Server wird dies als Empfangsadapter bezeichnet.
Verwechseln Sie den SWIFT-Client und -Server nicht mit dem Geschäftsclient und -server. Beispielsweise basiert ein Client (organization) auf den Diensten, die von einem Server bereitgestellt werden (organization). Wenn der Server (organization) eine Kommunikation mit dem Client (organization) initiieren möchte, muss er dazu eine SNL-Clientanwendung verwenden, und der Client (organization) muss über eine SNL-Serveranwendung verfügen, um den eingehenden Datenverkehr zu empfangen. Dies wird in der folgenden Abbildung beschrieben.
SNL geht davon aus, dass sowohl Client- als auch Serveranwendungen ausführbare Dateien sind, die über die Eingabeaufforderung gestartet werden. Beide stellen eine Verknüpfung mit der SNL-API-DLL her, die mit dem eigentlichen SNL-instance-Prozess kommuniziert.
SNL-Clientanwendungen
SNL-Clientanwendungen basieren auf der unten beschriebenen SwCall-API. Technisch gesehen kann eine typische Clientanwendung wie folgt beschrieben werden:
Main:
Initialize SNL API
Repeat
Call SwCall API
Until shutdown
SNL-Clientanwendungen müssen in einem dedizierten Prozess ausgeführt werden, da SNL anhand der Prozess-ID auf den Clientkontext verweist. SNL synchronisiert Aufrufe, die Tuxedo-Ressourcen verwenden, mit SwCall. Daher kann nur jeweils ein einzelner Clientthread einen SwCall effektiv ausführen.
Der Client unterstützt den synchronen Kommunikationsmodus. Dies bedeutet, dass die Rückgabe von SWCall erfolgt, wenn die Antwort vom Server zurückgegeben wird. Der nächste SwCall kann erst nach dieser Rückgabe ausgeführt werden.
SNL-Serveranwendungen
SNL-Serveranwendungen sind etwas komplexer als die Clientanwendungen. Serveranwendungen registrieren Rückruffunktionen, bevor sie einen blockierenden Aufruf der SNL-DLL ausführen. Technisch gesehen kann eine typische Serveranwendung wie folgt beschrieben werden:
Main:
Initialize SNL API
Call SwRegisterSwCallback, registering the Callback function
Call SwServer, block and receive callbacks
Callback(Request):
Process Request
Return Response
Die Serveranwendung kann die SwCall-API aufrufen, während sie sich in der Rückruffunktion befindet. In einigen Fällen muss SwCall aufgerufen werden, um das gewünschte Ergebnis oder die gewünschte Antwort zu erzielen. Eine Serveranwendung kann jedoch niemals eine Kommunikation über das Netzwerk initiieren. Eine Serveranwendung kann niemals eine Clientanwendung sein.
In der folgenden Abbildung ist der Aufruf mit der Bezeichnung Initialize eine Abstraktion für den SNL-API-Initialisierungsprozess, der mehrere Aufrufe erfordert. Der Aufruf mit der Bezeichnung SwCallback() wird mehrmals wiederholt, und der Aufruf mit der Bezeichnung SwCall() ist optional.
Alle Aufrufe zwischen dem Server und der SNL-API-DLL sind synchrone Funktionsaufrufe der Standard-C-Aufrufkonvention.
Weitere Informationen
Grundlegendes zur FileAct- und InterAct-Adapterarchitektur
Architektur des SWIFT-Sendeadapters
Architektur des SWIFT-Empfangsadapters