ores.ore.service

Table of Contents

1. Diagram

ores.ore.service component diagram

Figure 1: ores.ore.service

2. Summary

ores.ore.service is the runnable host of the component. It reads its configuration, opens the NATS and database connections, subscribes the ORE import subjects, and runs the service loop.

The import handlers are the part's substance: the worklist handler that stages an uploaded directory, the execute handler that plans and saves the documents into the trading and reference data model, the rollback handler, and the report package handler that assembles an ORE run's inputs.

The series key shape entity has no handler here or anywhere else, by design. It is a reference table ores.marketdata reads through the core's repository, in process, so the entity's model disables its protocol, handler, registrars, service and shell command rather than leaving a surface nothing composes.

3. Inputs

  • Configuration: NATS, database, logging, the HTTP base URL and the work directory.
  • NATS requests on workflow.v1.ore.import, ore.v1.ore.import.execute and ore.v1.ore.import.rollback, and the reporting package preparation.
  • The uploaded import tarball, fetched from object storage into the work directory.

4. Outputs

  • Imported and rolled-back rows in the trading and reference data model.
  • NATS responses carrying the import plan, the per-item outcome and any errors.
  • A running service process.

5. Entry points

  • src/main.cpp — process entry point.
  • src/app/ — the application and its host.
  • src/config/ — the command line and environment parser.
  • src/messaging/ — the registrar and the import, execute, rollback and report package handlers.

6. Dependencies

  • ores.service, ores.nats, ores.database, ores.utility, ores.telemetry.core and ores.eventing.core — linked publicly.
  • ores.ore.core, ores.ore.api, ores.storage, ores.workflow.api, ores.iam.client, ores.refdata.api, ores.trading.api, ores.reporting.api and Boost — linked privately.

7. See also

Emacs 29.3 (Org mode 9.6.15)