DIGIT Document Repository Codename: REPO DIGIT Document Repository: Codename: REPO Table of Contents
Total Page:16
File Type:pdf, Size:1020Kb
DIGIT Document Repository Codename: REPO DIGIT Document Repository: Codename: REPO Table of Contents 1. Architecture ................................................................................................................................... 1 1. Introduction ........................................................................................................................... 2 2. Architectural goals and philosophy ............................................................................................ 3 3. Assumptions and dependencies .................................................................................................. 4 4. Architecturally significant requirements ...................................................................................... 6 5. Decisions, constraints, and justifications ...................................................................................... 8 5.1. Relational database ....................................................................................................... 8 5.2. Persist index data in relational database ............................................................................ 8 6. Key abstractions ................................................................................................................... 10 6.1. Deployment diagram ................................................................................................... 10 7. Layers or architectural framework ............................................................................................ 12 7.1. Database ................................................................................................................... 13 7.2. Persistence Layer ........................................................................................................ 14 7.3. Delegates .................................................................................................................. 15 7.4. Service layer .............................................................................................................. 15 7.5. CMIS layer ................................................................................................................ 15 7.6. Package distribution .................................................................................................... 15 7.7. Server statistics .......................................................................................................... 17 7.8. Logging .................................................................................................................... 17 8. Architectural views ................................................................................................................ 18 2. Data model .................................................................................................................................. 19 3. Indexing Process ........................................................................................................................... 20 1. Context ............................................................................................................................... 21 2. Introduction .......................................................................................................................... 22 2.1. What is it .................................................................................................................. 22 2.2. Requirements / Restrictions .......................................................................................... 22 2.3. Integration ................................................................................................................. 22 3. Reverse Index ....................................................................................................................... 23 3.1. Definitions ................................................................................................................. 23 3.2. Repo index structure ................................................................................................... 23 3.3. Reciprocity between Repo index and Lucene ................................................................... 23 4. Index components ................................................................................................................. 25 4.1. Index entry points ....................................................................................................... 25 4.2. IndexSynchronizer ...................................................................................................... 25 4.3. Index task ................................................................................................................. 26 4.4. Index Part Operator ..................................................................................................... 27 4.5. Text analyzers ............................................................................................................ 28 4.6. Content extractor ........................................................................................................ 28 4.7. Transient index .......................................................................................................... 29 4.8. Permanent index ......................................................................................................... 29 5. Index processes ..................................................................................................................... 30 5.1. How words are extracted? ............................................................................................ 30 5.2. How the index is populated? ......................................................................................... 31 4. Query Service ............................................................................................................................... 36 1. Introduction .......................................................................................................................... 37 2. Query interfaces/entrypoints .................................................................................................... 40 3. Query processing steps ........................................................................................................... 41 3.1. Step 1: Parse query and generate Abstract Syntax Tree (AST) ............................................. 41 3.2. Step 2: Process (walk) AST and generate relational query (JPA) .......................................... 41 5. Policy Service .............................................................................................................................. 42 1. Introduction .......................................................................................................................... 43 iii DIGIT Document Repository 2. Policy life-cycle .................................................................................................................... 44 2.1. Policy Context ........................................................................................................... 45 2.2. Example .................................................................................................................... 46 3. How to implement a new policy .............................................................................................. 48 4. Available policies .................................................................................................................. 49 6. Configuration Parameters ................................................................................................................ 50 1. Environment files .................................................................................................................. 51 2. Common files ....................................................................................................................... 56 7. Deployment Plan ........................................................................................................................... 57 1. Pre-installation ...................................................................................................................... 58 1.1. Compile APR and Tomcat native interface ...................................................................... 58 1.2. Configuring JVM parameters ........................................................................................ 58 2. Installation ........................................................................................................................... 60 2.1. Creating the database .................................................................................................. 60 2.2. Repository configuration files ....................................................................................... 60 2.3. Deploy war file .......................................................................................................... 60 3. Post-installation .................................................................................................................... 61 3.1. Configure the repository instance ................................................................................... 61 3.2. ServerAlive page ........................................................................................................ 61 4. Upgrade from version 1.0.0 to 1.1.0 ........................................................................................