Page History
...
Definitioner og referencer
eDefinition | Beskrivelse |
NSP | Den nationale service platform (inden for sundheds-IT) |
LAR service | Den service der kalder CAVE servicen. |
Introduktion til CAVE servicen
...
CAVE servicen er en Java baseret komponent, der baserer sig på Java 8 og Spring Boot frameworket. Den udstillede FHIR snitflade sker ved anvendelse af HAPI FHIR frameworket.
Design og arkitektur er beskrevet: FSK Registry CAVE Design og Arkitekturbeskrivelse
Opsætning af udviklingsmiljø
I det følgende antages at koden er hentet ned fra SVN: https://svn.nspop.dk/svn/kvalitetsit/fskregistrycave/
Krav til software
Krav til applikationsserveren og operativsystemet er de samme som til produktionsmiljøet. De specifikke krav kan ses i Installationsvejledning for FSK Registry Adapteri ????
Derudover er der en række krav til de anvendte udviklingsværktøjer:
Maven 3.0.3 eller højere anvendes.
...
Man skal bruge Apache Maven til at bygge FSK RegistryCAVE servicen, hvilket gøres ved at køre kommandoen
$ mvn clean install
Efter by kan den installerbare WAR fil findes her:
/fskregistrycave-war/target/fskregistrycave.war
Deployment på Wildfly
...
Systemdesign er beskrevet i FSK Registry CAVE Design og Arkitekturbeskrivelse
Beskrivelse af kildekodens strukturering og design
...
Kildekoden bygges vha Apache Maven, og kildekoden er struktureret som Maven moduler, som vist
nedenfor.
|
|
|
|
|
|
│ ├── fskreg │ ├──
|
|
|
|
|
fskregistrycave-xds modulet indeholder koden til selve ITI-18 servicen.
fskregistry-app indeholder applikationslogikken - f.eks. den konkrete validering af patient id, beregning af DocumentEntry samt SQL kaldene mod databasen
service modulet indeholderapplikations logikken. Herunder validering, persistering via HAPI framework etc.
cavefskregistry-war står for selve pakketeringen som WAR fil. Herunder JBoss specifikke deployment descriptor samt eksempel konfiguration (WildFly Modul). .
cave-web er udenlukkende til brug i forbindelse med udvikling og test. Ved at eksekvere dette modul i Eclipse startes der en komplet CAVE service op inkl. en tom database. Databasen kører i en docker container ved hjælp af testcontainers.org. Dette modul pakkes IKKE med i WAR filen der laves i cave-war.
Beskrivelse af testsetup
Unittests (JUnit)
...
Integrationstests
Integrationstests kan afvikles på to måder. De kan enten afvikles mod en vilkårlig JBOSS instans eller mod en installation i docker på den lokale maskine. Sidst nævnte metode sørger selv for at starte containere med database og applikationsserver. Det sker ved at køre:hjælpe af tescontainers.org.
Integrationstest mod vilkårliginstallaiton. Bemærk at denne metode kræver at CAVE servicen er installeret på en Wildfly applikationsserver.
mvn test -Pintegration-
...
test -Dintegrationtestpropdir=src/test/integrationstest-localhost
Bemærk at dette forudsætter, at FSK Registry er deployeret på JBoss-serveren, da integrationstestene afvikles imod kørende service(s).
...
Integrationstest mod docker containere.
DOCKER_RUN=true mvn -P integration-test clean install