Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Navitabs
rootBehandlingsrelationsservice (BRS) - Leverancebeskrivelse
includeroottrue


 Version 0.10, 2020-07-23

Anchor
_Toc477259154
_Toc477259154
Table of Contents

...

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

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

...

  • brs webservice – afgør evidens for en behandlingsrelation og kan sætte en relationen til opfølgning.
  • notification webservice – til hent af "alarmer", dvs. behandlingsrelationer, der ikke blev fundet evidens for i løbet af opfølgningsperioden.Replication job – sender behandlingsrelationer til opfølgning på backend.

brs-backend (Backoffice)

  • replication webservice followupservlet – modtager behandlingsrelationer til opfølgning fra frontendfollowupjob – , foretager løbende opfølgning på behandlingsrelationer, og opretter alarm-notifikation hvis det ikke var muligt at opnå den ønskede evidens.
  • cleanupjob – løbende sletning af gamle alarmer

...

  • common – modul der indeholder de dele af koden der er fælles for komponenterne, herunder kode generet på baggrund af wsdl- og xsd-filer, databasehåndtering samt valideringsbiblioteket.
  • brs-frontend – indeholder webservice til behandlingsrelations, webservice til notifikationsopslag, samt replicationjob, der periodisk overfører opsamlingsforespørgsler til backend-delen af systemet.
  • brs-backend – indeholder webservice til modtagelse af opfølgninger fra frontend til backend-delen af systemet, followupjob til opfølgning og oprettelse af notifikationer, samt samt cleanupjob til sletning af notifikationer der er for gamle.
  • integration – setup til integrationtest og stresstest. Bemærk at projektet er selvstændigt, og ikke er defineret som modul i stil med common, frontend og backend.
  • performance – indeholder JMeter/Chronos tests, herunder maven mål til genering af test-data. Bemærk at dette modul ikke er ajourført, og pt. kun tjener som inspiration til hvordan en fremtidig struktureret performancetest kan udføres.
  • dataload-maven-plugin – maven modul der benyttes af performance-test til oprettelsen af test-data.
  • production – Hjælpe-klasser til udførelse af kald til et deployet system for at undersøge om det er fungerende.
  • testreport - Modul der har til formål at samle jacoco testrapporter fra de enkelte moduler i en samlet rapport (inkl total beregning af testcoverage)
  • kafka-migration - Modul der har til formål at læse indholdet af BRS2_TreatmentRelationFollowup-tabellen, konvertere hver enkelt række til en kafka-besked, og lægge beskeden i kø i Kafka.

Anchor
__RefHeading___Toc13026_485590894
__RefHeading___Toc13026_485590894
Anchor
_Toc477259163
_Toc477259163
Generelt design af webservices

Både Behandlingsrelationsservicen og Notificationservice er implementeret ved brug af Den Gode Webservice (DGWS), hvor Seal.Java er brugt til at håndtere headers.
JAX-WS er brugt til kodegenerering ud fra wsdl-filer. JAXB er brugt til kodegenerering ud fra xsd-filer. Dette giver anledning til nogle redundante filer der slettes blandt de generede JAX-WS filer. Grunden til at både JAX-WS og JAXB benyttes er, at JAX-WS ikke generer alle de nødvendige filer samt at det ikke er muligt at specificere visse JAXB bindings og parametre.

Anchor

...

__RefHeading

...

_

...

_

...

_

...

Replikeringsjobbet afvikles periodisk på dNSP'er og cNSP. Schedule, i form af et cron expression, samt adresse på backendens replikeringswebservice konfigureres i common/src/main/resources/default.properties, og kan overskrives i brs-frontend.properties.

Anchor
__RefHeading___Toc13030_485590894
__RefHeading___Toc13030_485590894
Anchor
_Toc477259165
_Toc477259165
Generelt design af Opfølgningsjobbet (Backoffice)

Opfølgningsjobbet afvikles er implementeret som en servlet, der kaldes periodisk på Backoffice. Schedule, i form af cron expression, konfigureres i common/src/main/resources/default.properties, og kan overskrives i brs-backend.properties.

Anchor
__RefHeading___Toc13032_485590894
__RefHeading___Toc13032_485590894
Anchor
_Toc477259166
_Toc477259166
Generelt design af behandlingsrelationsbiblioteket

...

Det nye tag skal efterfølgende fremgå under: https://svn.nspop.dk/svn/components/brs/tags

Igen genereres der en række filer, som opryddes via:

...