Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.
Kommentera: Uppdaterat bildstorlek

...

  • Integrationslager
    Hanterar all extern och intern kommunikation inklusive hantering av transaktioner, loggning fel och omsändning.
    Detta lager har beroenden till Mule CE som ESB och använder Apache Camel, och ansluter till Apache ActiveMQ som JMS provider.

  • Verksamhetslager
    Innehåller regelverk som följer regler i tjänstekontraktet för engagemangsindex.
    Detta lager är implementerat som rena Java klasser (POJO's) och använder Spring Framework för att hantering av beroenden i runtime (DI).

  • Persistenslager
    Hanterar lagring och sökning av engagemangsindex-information i databasen.
    Detta lager är beroende av JPA 2.0 samt Spring Data. För lokala tester används en HSQL in-memory databas och för externa tester används MySQL.
    Persistenslagret kan konfigureras för att använda andra databaser som MS SQL Server, IBM D2 eller Oracle.

Implementations källkodstruktur följer VGR's referensarkitektur inom ramen för Öppna Program (http://http://vastra-gotalandsregionen.github.io/oppna-program/:

Följande bild återger källkostrukturen ner på Maven modul och därmed Eclipse projekt nivåMavenmodulnivå:

Foldrarna innehåller följande projekt:

  • skltp-ei-application
    Spring Boot-applikation för att köra front- och backend som en kombinerad tjänst
  • skltp-ei-backend
    Applikation avsedd att driftsättas på en Mule instans Spring Boot-applikation med alla komponenter förutom update-service och notification-service som som ligger i frontend app'en
  • skltp-ei-common
    Innehålller kod som delas mellan frontend och backend
  • skltp-ei-data-model
    skltp-ei-frontendInnehåller källkoden för persistenslagret.
  • skltp-ei-schemas
  • skltp-ei-teststub
  • applicationsmule-backend-app
    Applikation avsedd att driftsättas på en Mule instans med alla komponenter förutom update-service och notification-service som som ligger i frontend app'en
    mule-frontend-app
    Applikation avsedd att driftsättas på en Mule instans Spring Boot-applikation med komponenterna update-service och notification-service.
    Not: Så länge frontend -appen är uppe så kan EI ta emot uppdateringar även om backend -appen och dess databas är nere för t ex underhåll.
  • compositesschemaskltp-ei-schemas
    Innehåller de tjänstekontrakt som implementationen exponerar och/eller konsumerar.
    svc
    Innehåller källkoden för verksamhetslagret samt persistenslagret.
  • modules
    • intsvc
      Innehåller källkoden för integrationslagret.
  • skltp-ei-teststub
    Stubbar för att underlätta testning

Följande modell beskriver de mest centrala källkodsartefakterna samt var de finns placerade i källkodsträdet:

Image RemovedImage Added

Persistenslager

...

Tabellen ser ut enligt:

engagement_index_table

KolumnnamnNull

Primär-

nyckel

Del av

logisk-

nyckel

Typ och Längd
idNejX
Varchar(64)

registered_resident_id

Nej
XVarchar(32)

service_domain

Nej
XVarchar(255)

categorization

Nej
XVarchar(255)

logical_address

Nej
XVarchar(64)

business_object_instance_id

Nej
XVarchar(128)

source_system

Nej
XVarchar(64)

data_controller

Nej
XVarchar(64)

owner

Nej
XVarchar(64)

clinical_process_interest_id

Nej
XVarchar(128)

creation_time

Nej

Timestamp

update_time

Ja

Timestamp

most_recent_content

Ja

Timestamp


Förutom primärnyckeln som är id så finns ett sökindex med namnet engagement_search_index.

...