20#ifndef ORES_REFDATA_CORE_REPOSITORY_PARTY_IDENTIFIER_REPOSITORY_HPP
21#define ORES_REFDATA_CORE_REPOSITORY_PARTY_IDENTIFIER_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/party_identifier.hpp"
38 inline static std::string_view logger_name =
39 "ores.refdata.repository.party_identifier_repository";
41 [[nodiscard]]
static auto& lg() {
43 static auto instance = make_logger(logger_name);
55 void write(
const std::vector<domain::party_identifier>& party_identifiers);
57 std::vector<domain::party_identifier> read_latest();
58 std::vector<domain::party_identifier> read_latest(
const boost::uuids::uuid&
id);
59 std::vector<domain::party_identifier> read_latest_by_code(
const std::string& code);
60 std::vector<domain::party_identifier> read_latest_by_party_id(
const boost::uuids::uuid& party_id);
62 std::vector<domain::party_identifier> read_all(
const boost::uuids::uuid&
id);
63 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
An external identifier for a party under a specific scheme.
Definition party_identifier.hpp:36
Reads and writes party identifiers to data storage.
Definition party_identifier_repository.hpp:36