Watch
1
0
Fork
You've already forked jeap-opensearch-index-writer-service
0
Read-only mirror of https://github.com/jeap-admin-ch/jeap-opensearch-index-writer-service — Bundesamt für Informatik und Telekommunikation. Issues & pull requests at the source. Catalog: https://www.opensource.admin.ch/en/softwares/8xt1yz https://www.opensource.admin.ch/en/softwares/8xt1yz
  • Java 99.9%
  • Shell 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-16 21:38:37 +00:00
.mvn Update dependency maven to v3.9.16 2026-06-30 09:09:37 +00:00
docs JEAP-7332 Fix OpenSearch connection URL handling 2026-07-31 11:16:17 +02:00
jeap-opensearch-index-writer-adapter-kafka Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-adapter-opensearch Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-adapter-remote-data Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-domain Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-index-config-repository Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-index-type-repository Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-service-instance Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
jeap-opensearch-index-writer-web Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
.gitignore JEAP-6850: Initial Commit 2026-04-07 13:44:29 +02:00
AGENTS.md JEAP-7332 Fix OpenSearch connection URL handling 2026-07-31 11:16:17 +02:00
CHANGELOG.md Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
LICENSE JEAP-6852: connect to OpenSearch 2026-05-08 13:49:08 +02:00
mvnw JEAP-6850: Initial Commit 2026-04-07 13:44:29 +02:00
pom.xml Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
publiccode.yml Update dependency ch.admin.bit.jeap:jeap-spring-boot-parent to v39 2026-08-16 21:38:37 +00:00
README.md JEAP-7182: add complete documentation 2026-06-19 14:21:41 +02:00
SECURITY.md JEAP-6850: Initial Version 2026-04-09 07:16:50 +02:00
setPomVersions.sh JEAP-6850: Initial Commit 2026-04-07 13:44:29 +02:00
THIRD-PARTY-LICENSES.md Updating THIRD-PARTY-LICENSES.md 2026-08-13 12:15:28 +02:00

jeap-opensearch-index-writer-service

Service template for event-driven indexing of search items into OpenSearch. A service instance is created by depending on this template, then adding index type and message configuration specific to the owning domain.

Key Features

  • Declarative message configuration: Kafka message types and topics mapped to index operations via /opensearch/messages.json
  • Multiple operations per message: Any number of UPSERT or DELETE operations per event
  • Reference provider pattern: Extracts one or more business object references from each event; all references are processed independently
  • Conditional execution: Operations guarded by IndexingCondition beans or jEAP feature flags
  • Schema validation: SearchItem fields validated against the IndexType mapping before every write
  • Managed metadata: search_item.upserted_at, major_version, and minor_version enriched automatically on every write
  • Service-owned index templates: Index templates created and kept up to date by the service at startup
  • Error handling: Failed operations forwarded to the jEAP error handling service

Documentation

Changes

This library needs to be versioned using Semantic Versioning and all changes need to be documented at CHANGELOG.md following the format defined in Keep a Changelog.

Note

This repository is part of the open source distribution of jEAP. See github.com/jeap-admin-ch/jeap for more information.

License

This repository is Open Source Software licensed under the Apache License 2.0.