Um den Ablauf der TCP-Kommunikation mit Spring Integration zu organisieren, habe ich vom letzten Mal an ein Sequenzdiagramm auf der Clientseite gezeichnet, obwohl es kompliziert ist.
Letztes Mal: Ich habe den Ablauf der TCP-Kommunikation mit Spring Integration (Client Edition) überprüft
Es wird davon ausgegangen, dass "autoStartUp" aktiviert ist, dh "Inbound Gateway" und "Connection Factory" werden beim Start der Anwendung gestartet. Das machte den Ausgangspunkt seltsam: verwirrt :.
Inbound Gateway
ruft die Methode auf, die ConnectionFactory
setzt.TcpConnection
registriert Inbound Gateway
als Sender / Empfänger über ConnectionFactory
.Inbound Gateway
enthält TcpConnection
,MessageMapper
extrahiert die Nachrichtennutzdaten und gibt sie zurück.Bemerkungen: Obwohl in der Abbildung weggelassen, gibt es zwischen "Messaging Template" und "Inbound Gateway" "Channel" und verschiedene Endpunkte.
TcpConnection
fordert Inbound Gateway
auf, die zu trennende Verbindung aus der Liste zu entfernen.Inbound Gateway
fordert Connection Factory
auf zu stoppen.ConnectionFactory
schließt ServerSocket
.TcpConnection
fordert Inbound Gateway
auf, die Verbindung, die getrennt werden soll, aus der Liste zu entfernen. Wenn noch Aufgaben vorhanden sind, löschen Sie diese ebenfalls.Bemerkungen:
Ich erwähnte, dass 1 eine Ausnahme verursacht hat, aber es bezieht sich auf den Fall, in dem "Socket" geschlossen ist.
Weitere Informationen TcpNetConneciton # run
Siehe tcp / connection / TcpNetConnection.java # L169).
Die obige Abbildung wurde mit einem Dienst namens WebSequenceDiagrams erstellt, der aus der vorherigen Zeit fortgesetzt wurde.
Recommended Posts