Schematechnieken

OOAPI Model

werkzaamheden

Sequence


sequenceDiagram

    actor Client

    participant API@{"type": "boundary"} as OOAPI

    participant Middleware@{"type": "control"}

    participant DB@{"type": "database"} as PHOUNIX

    Client->>API: Request

    critical Authenticate JWT

        API->>Middleware: Authenticate

    option No Token or token expired

        Middleware-->>Client: 401

    option Invalid role

        Middleware-->>Client: 403

    end

  

    critical Check parameters

        API->>Middleware: Parameter

    option Invalid parameter value

        Middleware-->>Client: 400

    end

  

    API->>DB: Query Data

    DB-->>API: Return data

  

    API-->>Client: 200

Component

flowchart LR Client[Client / Applicatie] —> APIM[Azure API Management]

APIM --> Auth[OAuth2 / JWT Validatie]
Auth -->|Token geldig + juiste rol| Function[Azure Function OOAPI V6]
Auth -->|Geen/ongeldig token| Error401[401 Unauthorized]
Auth -->|Onvoldoende rechten| Error403[403 Forbidden]

Function --> Middleware[Middleware]
Middleware --> Validation[Parameter Validatie]
Validation --> Service[Service Layer]
Service --> Mapping[OOAPI V6 Mapping]
Mapping --> Database[(PHOUNIX Database)]

Database --> Mapping
Mapping --> Service
Service --> Function
Function --> APIM
APIM --> Client

Validation -->|Ongeldige parameter| Error400[400 Bad Request]

Dit componentdiagram laat zien hoe een request door de OOAPI V6 loopt. De client stuurt een request via Azure API Management. Daarna wordt het JWT-token gevalideerd op geldigheid en rol. Bij een geldig token wordt de Azure Function uitgevoerd. De middleware controleert de parameters, waarna de service layer de juiste data ophaalt uit de PHOUNIX database. De mappinglaag zet deze data om naar het OOAPI V6-formaat voordat de response teruggestuurd wordt naar de client.