Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

├── jee
│   ├── lookup
│   │   ├── lookup-core
│   │   ├── lookup-ear
│   │   ├── lookup-idws
│   │   ├── lookup-minlog1-ws
│   │   └── lookup-ws
│   ├── registration
│   │   ├── registration-core
│   │   ├── registration-ear
│   │   ├── registration-minlog1-ws
│   │   └── registration-ws
├── shared
│   ├── shared-configuration
│   ├── shared-db
│   ├── shared-domain
│   ├── shared-domain-api
│   ├── shared-test
│   ├── shared-test-idws
│   └── shared-ws
└── Consumer

JEE 

Er opdelt i 3 moduler, lookup , og registration og shared

Som det fremgår er der flere webservices i modulerne lookup og regstration - de deler deres kode i xxxx-core. Modulerne med postfix "-ws" indeholder selve implementeringen af webservicens operationer. Ear modulerne er udelukkende holdere af deployment information.

Shared-configuration modulet indeholder log4-konfigurationer, applikationskonfigurationer, datasources, DDL og sql. Nærmere beskrivelse findes i installationsvejledningerne til Registration og Lookup.

Shared-test-xxx modulerne indeholde integrationstests og hjælpeværktøjer - der henvises til Integrationstests. 

Consumer

Consumer modulet lytter på et kafka topic efter entries til MinLog2 og ved modtagelse indsættes de i databasen. Koden har taget udgangspunkt i Den Gode Brug af Kafka og følger dennes retningslinier. 

...

Dette modul har forskellige anvendelsesformål. 

Konfiguration

...

  • shared-configuration indeholder DDL og konfigurationer - herunder muligheden for dem generet til specifikke miljøer

Der er ikke kode i denne

Delt kode

  • shared-db indeholder kode, der deles mellem komponenter, der indsætter i databasen (consumer og lookup)
  • shared-domain-api indeholder objekter, der udveksles via Kafka (registration og consumer)
  • shared-ws indeholder kode relateret til adgange, SLA o.lign og benyttes i modulerne, der udstiller webservices (lookup og registration)

Disse komponenter deployes med i consumer, registration og lookup via maven afhængigheder

Delt testkode

  • shared-test-xxx modulerne indeholde integrationstests og hjælpeværktøjer - der henvises til Integrationstests

Denne kode bliver ikke deployet.

Webservice stakken

Der er anvendt Apache CXF som webservice stak. Udgangspunktet er WSDL filer - som vha. maven danner klasser hvorfra MinLog2 implementeringerne arver fra:

...

Dette lag indeholder kode som interceptorer til håndtering af audit- og slalogning - hvis er kode relateret til sikkerhed som ikke håndteres af webservicestakken, skemavalidering af data (hvor det giver mening).

Controller

Stateless ejb'er Laget modtager kald fra webservicelaget og delegerer til andre klasser, der hver især håndterer hhv. validering, caching, groupering samt håndtering af persistens.

...