You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Next »

Indholdsfortegnelse

Introduktion

Formål

Formålet med dette dokument er at beskrive hvordan et udviklingsmiljø, til videreudvikling af GM-Facade, kan sættes op, samt hvordan koden bygges, deployes og testes.

Først beskrives de softwaremæssige krav, der er til miljøet, samt hvordan kode hentes og bygges. Dernæst beskrives deployment-miljøet.

Kodestrukturen, kodemæssige afhængigheder til tredjeparts moduler og de forskellige servicemodulers ansvar og design beskrives sidst i dette dokument sammen med testdesign.

Sammenhæng med øvrige dokumenter

Dette dokument er en del af den samlede dokumentation for GM-Facade.

Dokumentets relation til de øvrige dokumenter er beskrevet i dokumentationsoversigten for GM-Facade.

Læsevejledning

Læser forventes at have kendskab til Java, Maven og Spring.

Introduktion til GM-Facade

GM-Facade Snitfladen er defineret i GM-Facade - Guide til anvendere#Adgang%2Cbrugogsnitflader

GM-Facade er en Java-baseret komponent, der baserer sig på Java 21, 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/com/graviditetsmappens-app-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. Docker.

For at starte GM-Facade afvikles følgende kommando:


./docker-compose -f compose/development/docker-compose.yml build --pull

./docker-compose -f compose/development/docker-compose.yml up -d



Beskrivelse af systemdesign

Systemdesign er beskrevet i GM-Facade - Design- og arkitekturbeskrivelse.

Beskrivelse af kildekodens strukturering og design

Kode strukturering

Kildekoden bygges vha Maven, og kildekoden er struktureret som Maven moduler. GM-Facade består af følgende moduler:

cda-parserModul er ansvarligt for at parse indholdet af rå cda-dokumenter til HL7   
fhir-generatorModulet er ansvarligt for oversætte hl7 til Fhir
serviceModulet udstiller jakarta ws endpoints til med graviditestmappe relevante dokumenter via en fhir-snitflade 
integration-testModulet indeholder test der kører op mod kørende instans




Beskrivelse af testsetup

Unittests

JUnit anvendes til implementering af unit tests og kan afvikles som følger:

mvn test

Integrationstests

Integrationstests afvikles med:

 mvn verify -P integration-tests -Dtest.url=http://localhost:8083

Dette forudsætter at alle services er startet som angivet i  Afvikling

Hvis man ønsker af afvikle testen op mod en andet miljø f.eks. test1 eller test2, kan man angive det ved at ændre test url

Dokument Historik

3/4 2025Martin Henriksen/SDSEtablering af dokumentation
26/6 2025Thomas GlæsnerUdfyldt
  • No labels