Skip to content
Snippets Groups Projects
Commit 8cb27711 authored by Jan Zickermann's avatar Jan Zickermann
Browse files

OZG-4097 readme: Update sequence diagrams

parent 208250ce
No related branches found
No related tags found
No related merge requests found
...@@ -11,34 +11,47 @@ Senden und Empfangen von Postfach-Nachrichten über die OSI-Postfach-Facade 2.0 ...@@ -11,34 +11,47 @@ Senden und Empfangen von Postfach-Nachrichten über die OSI-Postfach-Facade 2.0
participant A as file-manager participant A as file-manager
participant B as Client participant B as Client
participant C as OPF participant C as OPF
activate A
activate C
activate B
activate N activate N
N->>B: OsiPostfachRemoteService::sendMessage N->>B: OsiPostfachRemoteService::sendMessage
Note left of B: (1) Hochladen der Anhänge activate B
Note left of B: (1) Nachschlagen einer Empfänger-Postfach-Adresse
B->>C: POST /MailboxDirectory/v1/Lookup
activate C
C-->>B: {mailboxId}
deactivate C
Note left of B: (2) Hochladen der Anhänge
B->>A: GRPC findBinaryFilesMetaData B->>A: GRPC findBinaryFilesMetaData
activate A
A-->>B: {Liste an Anhang-Metadaten} A-->>B: {Liste an Anhang-Metadaten}
deactivate A
loop Für jeden Anhang loop Für jeden Anhang
B->>A: GRPC GetBinaryFileContent B->>A: GRPC GetBinaryFileContent
activate A
loop Für jeden Daten-Chunk loop Für jeden Daten-Chunk
B->>C: POST /Quarantine/v1/Upload/Chunked (chunk) B->>C: POST /Quarantine/v1/Upload/Chunked (chunk)
activate C
C-->>B: C-->>B:
deactivate C
end end
A-->>B: A-->>B:
deactivate A
B->>C: POST /Quarantine/v1/Upload/Chunked (empty chunk) B->>C: POST /Quarantine/v1/Upload/Chunked (empty chunk)
activate C
C-->>B: C-->>B:
deactivate C
end end
deactivate A Note left of B: (3) Warten auf Prüfung der hochgeladenen Anhänge
Note left of B: (2) Warten auf Prüfung der hochgeladenen Anhänge
loop Regelmäßiges Polling bis alle Anhänge geprüft sind loop Regelmäßiges Polling bis alle Anhänge geprüft sind
loop Für alle Anhänge loop Für jeden Anhang
B->>C: GET /Quarantine/v1/Upload/{guid} B->>C: GET /Quarantine/v1/Upload/{guid}
C-->>B: activate C
C-->>B:
deactivate C
end end
end end
Note left of B: (3) Nachricht senden Note left of B: (4) Nachricht senden
B->>C: POST /MessageExchange/v1/Send/{mailboxId} B->>C: POST /MessageExchange/v1/Send/{mailboxId}
activate C
C-->>B: C-->>B:
deactivate C deactivate C
B-->>N: B-->>N:
...@@ -55,33 +68,37 @@ Senden und Empfangen von Postfach-Nachrichten über die OSI-Postfach-Facade 2.0 ...@@ -55,33 +68,37 @@ Senden und Empfangen von Postfach-Nachrichten über die OSI-Postfach-Facade 2.0
participant A as file-manager participant A as file-manager
participant B as Client participant B as Client
participant C as OPF participant C as OPF
activate A
activate C
activate B
activate N activate N
N->>B: OsiPostfachRemoteService::receiveMessages N->>B: OsiPostfachRemoteService::receiveMessages
activate B
B->>C: GET /MessageExchange/v1/Receive B->>C: GET /MessageExchange/v1/Receive
activate C
C-->>B: {Liste an Nachrichten-Kennungen (max 100)} C-->>B: {Liste an Nachrichten-Kennungen (max 100)}
deactivate C
loop Für jede Nachrichten-Kennung (messageId) loop Für jede Nachrichten-Kennung (messageId)
Note left of B: (1) Nachricht abrufen Note left of B: (1) Nachricht abrufen
B->>C: GET /MessageExchange/v1/Receive/{messageId} B->>C: GET /MessageExchange/v1/Receive/{messageId}
activate C
C-->>B: {Nachricht mit Anhang-Metadaten} C-->>B: {Nachricht mit Anhang-Metadaten}
deactivate C
Note left of B: (2) Herunterladen der Anhänge Note left of B: (2) Herunterladen der Anhänge
loop Für jeden Anhang loop Für jeden Anhang
B->>C: GET /MessageExchange/v1/Receive/{messageId}/Attachment/{attachmentId} B->>C: GET /MessageExchange/v1/Receive/{messageId}/Attachment/{attachmentId}
activate C
B->>A: GRPC UploadBinaryFileAsStream B->>A: GRPC UploadBinaryFileAsStream
activate A
A-->>B: A-->>B:
deactivate A
C-->>B: C-->>B:
deactivate C
end end
end end
deactivate A B-->>N: {Stream an Postfach-Nachrichten}
deactivate C
B->>N: {Stream an Postfach-Nachrichten}
deactivate B deactivate B
deactivate N deactivate N
``` ```
Der nachrichten-manager erhält von osiv2-postfach einen Stream von Postfach-Nachrichten. Nach der erfolgreichen Verarbeitung einer Nachricht sollte er `OsiPostfachRemoteService::deleteMessage` aufrufen: Der nachrichten-manager erhält beim Aufruf von `receiveMessages` einen Stream von Postfach-Nachrichten. Nach der erfolgreichen Verarbeitung einer Nachricht sollte er `deleteMessage` aufrufen:
```mermaid ```mermaid
%% Empfangen einer Nachricht %% Empfangen einer Nachricht
...@@ -89,11 +106,12 @@ Der nachrichten-manager erhält von osiv2-postfach einen Stream von Postfach-Nac ...@@ -89,11 +106,12 @@ Der nachrichten-manager erhält von osiv2-postfach einen Stream von Postfach-Nac
participant N as nachrichten-manager participant N as nachrichten-manager
participant B as Client participant B as Client
participant C as OPF participant C as OPF
activate C
activate B
activate N activate N
N->>B: OsiPostfachRemoteService::deleteMessage N->>B: OsiPostfachRemoteService::deleteMessage
activate B
B->>C: GET /MessageExchange/v1/Delete/{messageId} B->>C: GET /MessageExchange/v1/Delete/{messageId}
activate C
C->>B: C->>B:
deactivate C deactivate C
B-->>N: B-->>N:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment