Page History
...
Dokumentets relation til de øvrige dokumenter er beskrevet i dokumentationsoversigten for GM-Facade.
Læsevejledning
Læser forventes at have kendskab til ....Java, Maven, Wildfly, Spring og NSP Access Handler.
Introduktion til GM-Facade
GM-Facade Snitfladen er defineret i en ... GM-Facade - Guide til anvendere - Intern#Adgang%2Cbrugogsnitflader
GM-Facade er en Java baserede komponenter-baseret komponent, der baserer sig på på Java 21 og ??? frameworket, WildFly 34.0.0 som applikationsserver, og anvender Jakarta Web Services (Jakarta WS) til eksponering af webservice-endpoints.
Design og arkitektur er beskrevet : ....i GM-Facade - Design- og arkitekturbeskrivelse
Opsætning af udviklingsmiljø
I det følgende antages at koden er hentet fra git: https://git.nspop.dk/scm/bffcom/mingraviditetsmappens-graviditet-backend-for-frontendapp-facade.git
Krav til software
GM-Facade deployeres til Docker vha. ...docker compose
Derudover er der krav til de anvendte udviklingsværktøjer:
- Maven ???
- 3.6.3 eller højere anvendes.
Bygge
...
komponenten
Man skal bruge Maven til at bygge GM-Facade, hvilket gøres ved at køre kommandoen
mvn package |
Efter byg kan WAR filer findes her:
./ |
service/target/ |
gmaf.war |
Afvikling
Efter byg kan GM-Facade afvikles vha. .... Til dette formål findes ....Docker.
For at starte GM-Facade afvikles følgende kommando:
Udviklers workstation
Når man udvikler kan det være praktisk at foretage lokal deployment.
Dette kan gøres vha. ....:
Når GM-Facade er startet, svarer den på:
...
./docker-compose -f compose/development/docker-compose.yml build --pull ./docker-compose -f compose/development/docker-compose.yml up -d |
Bemærk, der findes også en docker compose opsætning i folderen "internal", som kan bruges til deploy mod docker setup som ikke tillader afvikling som root.
Beskrivelse af systemdesign
Systemdesign er beskrevet i GM-Facade - Design- og arkitekturbeskrivelse.
...
Kildekoden bygges vha Maven, og kildekoden er struktureret som Maven moduler. GM-Facade består af følgende moduler:
| cda-parser | Indeholder kode til at parse indholdet af cda-dokumenter til HL7 |
| fhir-generator | Indeholder kode til at oversætte hl7 til Fhir |
| service | Indeholder kode til udstilling endpoints |
| integration-test | Indeholder test der kræver en kørende instans |
Beskrivelse af testsetup
Unittests
??? JUnit anvendes til implementering af unit tests . Der er kontinuert gennemført unit tests på alle komponenter i projektet.
Unit tests afvikling under byg vha ??? plugin for Maven, men kan separat afvikles ved at køre:
...
mvn test
og kan afvikles som følger:
|
Integrationstests
Integrationstests
Hvis der derimod laves en verify, så vil der også blive genereret code coverage, hvor fremkommende rapport kan ses i testreport/target/site/jacoco-aggregate/index.html
Integrationstests
Integrationstests ligger i modulet ??? og kan afvikles med:
Dette forudsætter at alle services er startet som angivet i ??? setuppet Afvikling
Hvis man ønsker af afvikle testen op mod en andet miljø f.eks. test1 eller test2 henvises til GM-Facade - Testvejledning., kan man angive det ved at ændre test url
Dokument Historik
| 3/4 2025 | Martin Henriksen/SDS | Etablering af dokumentation |
| 26/6 2025 | Thomas Glæsner | Udfyldt |