4.2. Konfigurace komponenty Výběr

Konfigurace komponenty je uložena v jednom konfiguračním souboru. Soubor je ve formátu YAML, který je pojmenován eskartace-deploy.yml. Součástí distribuce komponenty je šablona konfiguračního souboru (eskartace-deploy.yml.template). V šabloně jsou popsány jednotlivé konfigurační volby.

Předmětem konfigurace komponenty je:

4.2.1. Umístění konfigurace

Pro každou jednotlivou instanci komponenty je vhodné mít vždy samostatný adresář, kde jsou umístěny konfigurace, logy, případně i databázové soubory.

Příklad rozložení adresářů a souborů:

Soubor

Význam

eskartace-x.y.z.jar

Binární soubor se službou

config/eskartace-deploy.yml

Konfigurace instance komponenty

data/....

Adresář pro přijaté SIPy

logs/....

Adresář pro logovací soubory

4.2.2. Webové rozhraní

Komponenta poskytuje webové rozhraní pro přejímku. Port, kde je webové rozhraní k dispozici se nastavuje v konfiguraci. V konfiguraci je také možné přepnout komunikaci mezi HTTP a HTTPS. Technické detaily nastavení HTTPS jsou součástí dokumentace Spring Boot (https://docs.spring.io/spring-boot/docs/current/reference/html/howto-embedded-web-servers.html#howto-configure-ssl).

Příklad nastavení:

# Port, kde bude služba dostupná (HTTP/HTTPS)
server:
  port: 8203
# Nastavení HTTPS (standardně vypnuto)
#  ssl:
#    enabled: true
#    key-store: keystore.jks
#    key-store-password: secret
#    key-password: another-secret

4.2.3. Vytvoření databáze

  1. Vytvoření uživatele:

CREATE ROLE app WITH LOGIN PASSWORD 'jk23jkmn3az';
  1. Vytvoření DB

CREATE DATABASE vyber OWNER app;

4.2.4. Připojení k databázi

Součástí zkompilované aplikace je JDBC ovladač pro připojení k MySQL a PostgreSQL databázi. Databáze musí být vytvořena samostatně administrátorem. Zvolený uživatel musí mít oprávnění volat DDL příkazy (vytvářet tabulky).

Ovladače MySQL Connector/J: verze 8.0.13 Ovladače PostgreSQL: verze 42.2.5

spring:
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://127.0.0.1:5432/vyber
    username: app
    password: app

V části url se definuje řetězec pro připojení k databázi, přihlašovací údaje se uvedou do parametrů username a password.

4.2.5. Pracovní adresář SIPů a název instance

Modul má pracovní soubory zpracovávaných SIPů uloženy na disku. Cesta k tomuto úložišti musí být nastavena. Je vhodné nastavit úplnou cestu.

Název instance se používá při komunikaci s dalšími komponentami.

Sekce obsahuje pevná nastavení komponetny jako je číslo archivu a jeho název.

eskartace:
  # Cesta, kde jsou uloženy datové soubory
  # Ve Windows se zadává takto: D:\\projects\\vyber\\data
  dir: data
  # Název instance
  instanceId: vyber-devel
  # Kód archivu použitý v reportech
  archiveCode: 620000010
  # Název archivu používaný v reportech
  archiveName: Archiv UK Praha
  # Url používané v reportech jako odkaz na řízení
  reportUrl: http://127.0.0.1:8200/eskartace
  outputFormat: ESM
  # Plný rozsah evidenčních jednotek
  fullEJ: true
  # Je používáno zařazení
  allowSubmission: true
  # Není používána interní správa uživatelů
  allowUserManagement: false
  # Nelze vytvářet jednorázové účty pro SIP řízení
  allowOtAccountCreate: false
  # Nelze vytvářet jednorázové účty pro MSK řízení
  allowOtAccountCreateMSK: false
  allowMultipleOriginators: true
  # zakaze aktualizaci komponent
  allowComponentUpdate: false
  # Formát čísla řízení
  idFormat: CZAUK620000100ESK%d
  # nelze editova SIPy
  enableSIPEdit: false
  # vytvořené zip soubory pro stažení balíčku jsou smazány po 24 hodinách
  deleteZippedPackagesAter: 24
  # adresář se šablonami reportů
  templatesDir: D:\\projects\\vyber\\templates
  personIdConvertor: elza
  # EAD s rozšířeným popisem osob
  pruvodkaFormat: DIGIARCH2021
  #Cesta k souboru se sablonami pro vytvareni balicku se strukturou v MSK
  mskPackageTemplate: C:\\projects\\nda\\code\\eskartace\\config\\templates\\msk.xml
  #Zprava zobrazená v seznamu řízení
  applicationMessage: Testovací instance
  #Zkopiruje ukladaci jednotku z dokumentu do spisu
  processUJ: false
  #Na urovni spisu importuje poznamku
  processNote: false
  #Po jake dobe maze dokumenty z dokoncenych rizeni
  deleteProcessedAfterHours: 720
  #Ktere casti maze
  #  data - soubory sipu
  #  metadata - soubory s reporty a vygenerovanymi eady
  #  editor - reprezentace sipu v databazi
  #  history - zaznamy historie v databazi
  #  packages - seznam balicku v databazi
  deleteProcessedScope: [data,metadata,editor,history,packages]

V části eskartace se definuje cesta k adresáři, kde se budou ukládat zpracovávaná data, název instance instance používaný při komunikaci s ostatními systémy a adresa, ze které je možné stahovat reporty reportUrl.

4.2.6. Nastavení logování

Logování se nastavuje v sekci logging. Komponenta využívá nástroj Spring Boot. Možnosti nastavení logování jsou detailně popsány v jeho dokumentaci (https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-logging.html).

Příklad nastavení logování:

logging:
  file: logs/vyber.log
  pattern:
    level: "%X{userName:--} %p"
  level:
    com.lightcomp: 'INFO'

4.2.7. Nastavení adres pro UPL

Nastavení UPL slouží pro definici adres WSDL rozhraní a FileTransfer rozhraní služby.

Příklad nastavení UPL:

upl:
  url: http://127.0.0.1:9007/upl/ws
  ftUrl: http://127.0.0.1:9007/upl/ft
  authorization:
    username: upl-ws
    password: uplws1973
    authorizationType: Basic

4.2.8. Nastavení adres pro CRO

Nastavení CRO slouží pro konfiguraci služby na rozesílání notifikací/mailů

cro:
  sender: mailservice
  url: http://localhost:8080/esm/ws/mailService
  # Puvod notifikace
  source: vyber-devel
  user: vyber-devel
  convertIdToEmail: true
  authorization:
    username: ais
    password: ais
    authorizationType: Basic
    wssecurity: true

4.2.9. Nastavení adres pro odesílání řízení/přejímky/obohace do esm

eprejimka:
  url: http://localhost:8080/esm/cxf/ft
  authorization:
    username: eprejimka-ws
    password: epws1973
    authorization-type: Basic

4.2.10. Konfigurace exiftool

exiftool:
  app: exiftool

4.2.11. Konfigurace ELZA

elza:
  url: http://localhost:8210/services/ExportService
  soapLogging: true
  authorization:
    username: vyber
    password: vyber

4.2.12. Konfigurace externích restových služeb volaných z UI

ui:
  uplUrl: /upl/upl
  admUrl: /vyber/api
  title: Výběr
  pevUrl: https://frnk.lightcomp.cz/uk/aistest/esm/api/data_import
  elzaUrl: https://frnk.lightcomp.cz/uk/aistest/archx/elza/cuni-ais-api/search-ap