ORE Studio 0.0.4
Loading...
Searching...
No Matches
Static Public Member Functions | List of all members
registrar Class Reference

Helper class for registering entity-to-event mappings. More...

#include <registrar.hpp>

Collaboration diagram for registrar:
Collaboration graph

Static Public Member Functions

template<typename Event >
static void register_mapping (postgres_event_source &source, const std::string &entity_name, const std::string &channel_name)
 Register a single entity-to-event mapping.
 
template<domain::has_event_traits Event>
static void register_mapping (postgres_event_source &source, const std::string &entity_name, const std::string &channel_name, event_channel_registry &registry, const std::string &description)
 Register a single entity-to-event mapping with channel registry.
 

Detailed Description

Helper class for registering entity-to-event mappings.

Each component should call register_mapping() with their event types during application initialization.

Usage:

// In ores.risk registration code:
eventing::service::registrar::register_mapping<currency_changed_event>(
source, "ores.refdata.currency", "ores_currencies");

Member Function Documentation

◆ register_mapping() [1/2]

template<typename Event >
static void register_mapping ( postgres_event_source source,
const std::string &  entity_name,
const std::string &  channel_name 
)
static

Register a single entity-to-event mapping.

Template Parameters
EventThe domain event type to publish.
Parameters
sourceThe postgres event source to configure.
entity_nameThe fully qualified entity name.
channel_nameThe PostgreSQL channel to listen on.

◆ register_mapping() [2/2]

template<domain::has_event_traits Event>
static void register_mapping ( postgres_event_source source,
const std::string &  entity_name,
const std::string &  channel_name,
event_channel_registry registry,
const std::string &  description 
)
static

Register a single entity-to-event mapping with channel registry.

This overload also registers the event channel with the provided registry, enabling clients to discover available event channels.

Template Parameters
EventThe domain event type to publish (must have event_traits).
Parameters
sourceThe postgres event source to configure.
entity_nameThe fully qualified entity name.
channel_nameThe PostgreSQL channel to listen on.
registryThe event channel registry to populate.
descriptionHuman-readable description of the event channel.