Use cases Notificatie Broker
Overzicht Notificatie Broker
Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Notificatie Broker component. De Notificatie Broker ontvangt toestemming notificaties van Mitz, en stuurt deze (indien gewenst) door naar GBZ-applicaties.

De services zijn toegankelijk via een geboden interface en worden beschreven in de vorm van use cases. Een service wordt altijd vervult middels één of meerdere applicatiefuncties, bijvoorbeeld Mitz Notificatie Broker. De Notificatie Broker component maakt zelf ook gebruik van een aantal interfaces, bijvoorbeeld van de Toestemming Notificatie Interface.
Doorgeven Mitz Notificatie
Primaire actor | Mitz |
---|---|
Systeem | Mitz Notificatie Broker |
Secundaire actor | Resource Client (GBx-applicatie) |
Code | |
Realiseert Feature |
Pre-condities
De primaire actor is aangesloten op het systeem. |
Het systeem is slechts benaderbaar voor
|
Main flow
AOF.UCe.VAL.100.v1 - Toetsing type content | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem ontvangt een verzoek en start de verwerking. Het systeem toetst of het gevraagde type content (Accept header) en het gehanteerde type content (Content-Type header) worden ondersteund. NB. wanneer het verzoek wordt ontvangen van een component van VZVZ, dan hoeft geen toets op type content te worden uitgevoerd. | Gevraagd type content niet ondersteund statuscode 406 Not Acceptable |
Gehanteerd type content niet ondersteund statuscode 415 Unsupported Media Type | ||
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
AOF.UCe.VAL.160.v1 - Inhoudelijke toetsing request | Uitkomst | |
---|---|---|
Stap | Omschrijving | |
i | Het systeem toetst of het request geen malafide inhoud bevat (zie FHIR security, input validation). | Ongeldig verzoek statuscode 400 Bad Request |
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
ii | Het systeem toetst of het verzoek voldoet aan de interface specificatie. Hierbij moet ook worden voldaan aan de toelichting "Controle van batch en transaction requests". FHIR-requests dienen te worden getoetst tegen de core FHIR specificaties (RESTful API). Indien een Indien een specifieke FHIR-profiel van toepassing is voor het gevonden interactie-id, dan dient het FHIR-request hier ook tegen te worden getoetst. NB. toetsing tegen een volledig FHIR-profiel wordt nog niet gedaan - consequenties van deze toets worden eerst in kaart gebracht. | Ongeldig verzoek statuscode 400 Bad Request |
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. |
Stap | Omschrijving | Uitkomst |
---|---|---|
1 | Het systeem verkrijgt, m.b.v. Feature getApplication(s), informatie over de GBx-applicatie van de bronhouder, die hoort bij het endpoint waarop de notificatie werd ontvangen. | Bronhouder onbekend statuscode 400 Bad Request |
Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow. | ||
2 <exit> | Het systeem retourneert een response naar de primaire actor. Let op. Deze stap is gemarkeerd als <exit> stap, maar is vanwege het asynchrone karakter van deze use case niet de laatste stap. | Verwerking succesvol statuscode 200 OK |
3 | Indien de bronhouder Mitz Toestemming Notificaties wil en kan ontvangen: Het systeem bepaalt m.b.v. de geregistreerde conformances in het APR (verkregen in een vorige stap) of een FHIR- of een v3-notificatie moet worden uitgestuurd. De FQDN waarop een notificatie moet worden afgeleverd wordt eveneens verkregen uit het APR. | |
4 | Het systeem verstuurt de notificatie via het bestaande mechanisme voor guaranteed delivery, op de wijze zoals gespecificeerd in
|
Post-condities
Het systeem heeft ontvangen request en de geretourneerde response gelogd, zoals beschreven in de Toelichting Logging. |
Het systeem heeft van het ontvangen request, de volgende attributen gelogd:
== Het systeem heeft voor ieder uitgaand request, dat bij het doorlopen van de use case werd verzonden, de volgende attributen gelogd:
|
Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:
== Het systeem heeft voor iedere response, die bij het doorlopen van de use case werd ontvangen, de volgende attributen gelogd:
|
Toelichtingen
Eisen aan verwerking notificatie vanuit Mitz
Eisen aan verwerking notificatie vanuit Mitz
Voor notificaties die door Mitz verzonden worden geldt het principe van guaranteed delivery door de Mitz-connector. Dat betekent dat de aflevering van de notificaties naar bronsystemen asynchroon gebeurt.
De Mitz-connector geeft dus direct een HTTP response aan Mitz en gaat, indien de resource met succes is ontvangen en gebufferd, daarna proberen om deze af te leveren bij het bronsysteem. De methode waarmee dit gebeurt is afhankelijk van de Mitz-connector en valt buiten de scope van de implementatie van Mitz.
De response is een ontvangstbevestiging, geen bevestiging van succesvolle verwerking.