Skip to content
Snippets Groups Projects
Name Last commit Last update
.m2
src
.gitignore
.gitlab-ci.yml
README.md
pom.xml

XTA-Client

Ein Client zum Senden und Empfangen von XTA Nachrichten.

Der Client verwendet XTA 2 Version 3.1 mit XTA-Modul-Webservice-Version 2.1.1. Er wird als Maven-Artefakt xta-client-lib bereitgestellt und kann in Java-Anwendungen eingebunden werden.

Senden einer Nachricht

Zum Senden einer Nachricht konfiguriert der Nutzer einen neuen XTA-Client.

%% Versand einer Nachricht
  sequenceDiagram
    participant A as Nutzer
    participant B as XTA-Client
    participant C as XTA-Server
    Note left of A: (1) XTA-Client erzeugen
    Note left of A: (2) Nachricht erzeugen
    Note left of A: (3) Nachricht senden
    A->>B: sendMessage
    activate A
    activate B
    B->>C: checkAccountActive
    activate C
    C-->>B: 
    deactivate C
    B->>C: lookupService
    activate C
    C-->>B: 
    deactivate C
    B->>C: createMessageID
    activate C
    C-->>B: 
    deactivate C
    B->>C: sendMessage
    activate C
    deactivate C
    B->>C: getTransportReport
    activate C
    C-->>B: 
    deactivate C
    Note left of A: (4) Nachrichtenstatus prüfen
    B-->>A: 
	deactivate B
	deactivate A

* XTA-Server wird auch oft als Nachrichtenbroker oder Nachrichtenvermittler bezeichnet.

Beispielcode:

// (1) XTA-Client erzeugen
var client = XtaClient.from(config);
// (2) Nachricht erzeugen
...

Empfangen von Nachrichten

Zum Empfangen von Nachrichten konfiguriert der Nutzer einen neuen XTA-Client mit allen seinen Leser-Kennungen.

%% Abfrage einer Nachricht
  sequenceDiagram
    participant A as Nutzer
    participant D as Verarbeiter
    participant B as XTA-Client
    participant C as XTA-Server
    Note left of A: (1) XTA-Client erzeugen
    Note left of A: (2) Nachrichten abholen
    A->>B: fetchMessages

    activate A
    activate B
    B->>C: getStatusList
    activate C
    C-->>B: 
    deactivate C
    B->>C: getTransportReport
    activate C
    C-->>B: 
    deactivate C
    B->>A: 
	deactivate B
	Note left of B: (4) Nachricht abholen
    A->>B: getMessage
    activate B
    B->>C: getMessage
    activate C
    C-->>B: 
    deactivate C
    B->>C: getTransportReport
    activate C
    C-->>B: 
    deactivate C
    B->>A: 
	deactivate B
	Note left of D: ...Nachricht verarbeiten...
	Note left of B: (5) Nachricht schließen
    A->>B: close
    activate B
    B->>C: close
    activate C
    C-->>B: 
    deactivate C
    B->>A: 
	deactivate B
	deactivate A

Beispielcode:

// (1) XTA-Client erzeugen
var client = XtaClient.from(config);
// (2) Nachricht erzeugen
...

Referenzen