-
Notifications
You must be signed in to change notification settings - Fork 26
StrukturaAplikace
Jan Skopal edited this page Nov 22, 2017
·
10 revisions
Administrátorské rozhraní Krameria verze 5 je shodné s rozhraním Kramerius verze 4.
Kramerius je standardní webová aplikace v jazyce Java odpovídající specifikacím Servlet API 2.4 a Java Server Pages 1.1. Aplikace je definována v hlavním modulu search.
Způsob dokumentace projektu
- Popis obecné struktury aplikace Kramerius
- Popis jednotlivých modulů a informace o jejich účelu
- Popis hlavních tříd, které mají dokumentované public API
- Popis, jak postupovat, když bude někdo chtít přispívat do kódu
Kromě hlavního modulu aplikace search je systém Kramerius tvořen následujícími moduly:
- common - služby sdílené jednotlivými moduly
- FedoraAccess - přístup ke službám REST API fedora commons
- SolrAccess - přístup ke službám indexu SOLR
- database - správa verzí databáze Krameria
- imaging - podpora práce s obrazovými daty. Využívá standardní knihovnu Java ImageIO. Kodeky pro další psecifické formáty je možno najít např. zde: [https://github.com/geosolutions-it/imageio-ext]
- pdf - online generování PDF
- printing - tisková fronta na serveru
- processes - API pro správu administrátorských procesů (popis remote API k procesům, popis implemtenace procesů)
- security - API pro správu přístupových práv (popis práv, rozšíření práv o podporu streamů)
- service - ostatní sdílené služby
- virtualcollections - podpora virtuálních sbírek
- fedora-api - mapování SOAP API-M fedora commons
- security-core - společné služby správy uživatelů a rolí
- import - třídy pro spouštění importních procesů z formátu K3 a FOXML
- import-mets - konvertor z nové specifikace formátu METS
- indexer - proces indexace dokumentů v indexu SOLR
- static-export - export dokumentů ve formátu PDF na CD a DVD
Podpůrné moduly procesů import a import-mets:
- import-cmd-tool - konvertor z formátu K3, generátor FOXML
- import-jaxb-dc - JAXB mapování schematu Dublin Core
- import-jaxb-mets - JAXB mapování schematu METS
- import-jaxb-mods - JAXB mapování schematu MODS
- import-jaxb-periodical - JAXB mapování schematu periodik Kramerius3
- import-jaxb - JAXB mapování schematu monografií Kramerius3
- editor - grafický editor pořadí součástí v datastreamu RELS-EXT
- rightseditor - editor uživatelských účtů využitelný při použití databázového security realmu pro aplikační servery bez vlastní správy uživatelů (Tomcat)
Kramerius využívá buildovací systém Gradle. Instrukce k buildu jsou vidět zde: https://raw.githubusercontent.com/ceskaexpedice/kramerius/master/BUILD-README.txt
Přehled programátorských konvencí, používaných při vývoji systému Kramerius, je na stránce wiki StyleGuidelines.