Indledning

I det følgende er beskrevet de punkter hvor Lpr3Indlæseren afviger fra referencearkitekturen:

Modtagelse af fil 

Beskrivelse af udvalgte dele af Camel udtrykket:

Camel optionBeskrivelse
sftp:myUser@sftpserver:22/dxc?password=myPassword

Lokation hvor filen hentes (sftpserver i directory "/dxc").

Der logges ind på serveren med brugernavn "myUser" og kodeord "myPassword".

readLock=changed

Filen skrives til en temporær fil hvorefter den omdøbes i en atomar fil-operation til det tilnavn der kigges efter, 

kan Camel's indbyggede "change" option anvendes som tjekker om filen stadig ændrer sig,

og når den ikke gør det længere anses den for færdigskrevet og filen hentes.

antInclude=*.csv
Filer der modtages skal matche dette mønster
localWorkDirectory=/tmp/lpr3

Filen indlæses til en temporær lokation i stedet for at hente den op i memory.

LPR3-filerne kan bliver så store at det ikke kan lade sig gøre at have hele filen i memory


Den komplette Camel udtryk for modtagelse af filer ser sådan her ud:

sftp:myUser@sftpserver:22/dxc?password=myPassword&readLock=changed&readLockCheckInterval=10000&antInclude=*.csv&delete=true&disconnect=true&localWorkDirectory=/tmp/lpr3&stepwise=false&initialDelay=5s&delay=5s&knownHostsFile=/pack/wildfly8/modules/dk/nsp/indlaeser/lpr3/known_hosts

Levering af events

LPR3Indlæseren leverer ikke events via. SKRS, men de persisteres direkte i databasen.


Directories

Når en datafil indlæses er der flere stop på vejen og det kan være lidt svært at overskue hvilket directory der hører til de forskellige dele af indlæsningen.

Tabel over datafilens placering i forhold til de servere og komponenter der findes på siden LPR 3 Indlæser - Design- og Arkitekturbeskrivelse:

KomponentDirectoryBemærkning
Lokal PCsrc/test/resources/integrationtest/dataDenne findes ikke på illustrationen, men vil være i stedet for "DXC" når man indæser med lokal docker-compose setup.
SFTP server/home/foo/dxc
LPR3Indlæser/tmp/lpr3/inputDatafiler der skal indlæses i databasen processeres af Camel herfra
  • No labels