20#ifndef ORES_REFDATA_CORE_REPOSITORY_BOOK_REPOSITORY_HPP
21#define ORES_REFDATA_CORE_REPOSITORY_BOOK_REPOSITORY_HPP
25#include <sqlgen/postgres.hpp>
26#include <boost/uuid/uuid.hpp>
27#include "ores.logging/make_logger.hpp"
28#include "ores.database/domain/context.hpp"
29#include "ores.refdata.api/domain/book.hpp"
38 inline static std::string_view logger_name =
39 "ores.refdata.repository.book_repository";
41 [[nodiscard]]
static auto& lg() {
43 static auto instance = make_logger(logger_name);
55 void write(
const std::vector<domain::book>& books);
57 std::vector<domain::book> read_latest();
58 std::vector<domain::book> read_latest(
const boost::uuids::uuid&
id);
59 std::vector<domain::book> read_latest_by_code(
const std::string& code);
61 std::vector<domain::book> read_all(
const boost::uuids::uuid&
id);
62 void remove(
const boost::uuids::uuid&
id);
Implements logging infrastructure for ORE Studio.
Definition boost_severity.hpp:28
Database persistence layer for risk domain types.
Definition book_entity.hpp:28
Context for the operations on a postgres database.
Definition context.hpp:47
Operational ledger leaf that holds trades.
Definition book.hpp:37
Reads and writes books to data storage.
Definition book_repository.hpp:36