Senzing C++ SDK
C++ SDK for Senzing v4, patterned after the official C# SDK
Loading...
Searching...
No Matches
senzing::sdk::core::SzCoreConfigManager Class Referencefinal

Core implementation of SzConfigManager backed by the native SzConfig_* and SzConfigMgr_* modules. More...

#include <SzCoreConfigManager.hpp>

Inheritance diagram for senzing::sdk::core::SzCoreConfigManager:
Collaboration diagram for senzing::sdk::core::SzCoreConfigManager:

Public Member Functions

 SzCoreConfigManager (SzCoreEnvironment &env)
 Constructs and initializes the native SzConfig_* module using the owning environment's settings.
 
 ~SzCoreConfigManager () override=default
 
 SzCoreConfigManager (const SzCoreConfigManager &)=delete
 
SzCoreConfigManageroperator= (const SzCoreConfigManager &)=delete
 
std::unique_ptr< SzConfigCreateConfig () override
 Creates a new in-memory config from the registered template.
 
std::unique_ptr< SzConfigCreateConfig (const std::string &configDefinition) override
 Creates an in-memory config from the supplied JSON definition.
 
std::unique_ptr< SzConfigCreateConfig (int64_t configID) override
 Loads the persisted config with the given ID into a new in-memory config.
 
int64_t RegisterConfig (const std::string &configDefinition, const std::string &configComment) override
 Registers a config definition with a comment; returns the new config ID.
 
int64_t RegisterConfig (const std::string &configDefinition) override
 Registers a config definition (auto-generated comment); returns the ID.
 
std::string GetConfigRegistry () override
 Returns JSON describing all registered configurations.
 
int64_t GetDefaultConfigID () override
 Returns the current default configuration ID.
 
void ReplaceDefaultConfigID (int64_t currentDefaultConfigID, int64_t newDefaultConfigID) override
 Atomically replaces the default config ID if it currently matches currentDefaultConfigID.
 
void SetDefaultConfigID (int64_t configID) override
 Sets the default configuration ID.
 
int64_t SetDefaultConfig (const std::string &configDefinition, const std::string &configComment) override
 Registers configDefinition (with comment) and sets it as default; returns the new config ID.
 
int64_t SetDefaultConfig (const std::string &configDefinition) override
 Registers configDefinition (auto comment) and sets it as default.
 
void Destroy ()
 Destroys both native modules.
 
bool IsDestroyed ()
 True once the native SzConfig_* module has been destroyed.
 
- Public Member Functions inherited from senzing::sdk::SzConfigManager
virtual ~SzConfigManager ()=default
 

Detailed Description

Core implementation of SzConfigManager backed by the native SzConfig_* and SzConfigMgr_* modules.

Constructor & Destructor Documentation

◆ SzCoreConfigManager() [1/2]

senzing::sdk::core::SzCoreConfigManager::SzCoreConfigManager ( SzCoreEnvironment env)
explicit

Constructs and initializes the native SzConfig_* module using the owning environment's settings.

The SzConfigMgr_* module is initialized lazily on first use (mirrors C#). Throws the mapped SzException on init failure.

◆ ~SzCoreConfigManager()

senzing::sdk::core::SzCoreConfigManager::~SzCoreConfigManager ( )
overridedefault

◆ SzCoreConfigManager() [2/2]

senzing::sdk::core::SzCoreConfigManager::SzCoreConfigManager ( const SzCoreConfigManager )
delete

Member Function Documentation

◆ CreateConfig() [1/3]

std::unique_ptr< SzConfig > senzing::sdk::core::SzCoreConfigManager::CreateConfig ( )
overridevirtual

Creates a new in-memory config from the registered template.

Implements senzing::sdk::SzConfigManager.

◆ CreateConfig() [2/3]

std::unique_ptr< SzConfig > senzing::sdk::core::SzCoreConfigManager::CreateConfig ( const std::string &  configDefinition)
overridevirtual

Creates an in-memory config from the supplied JSON definition.

Implements senzing::sdk::SzConfigManager.

◆ CreateConfig() [3/3]

std::unique_ptr< SzConfig > senzing::sdk::core::SzCoreConfigManager::CreateConfig ( int64_t  configID)
overridevirtual

Loads the persisted config with the given ID into a new in-memory config.

Implements senzing::sdk::SzConfigManager.

◆ Destroy()

void senzing::sdk::core::SzCoreConfigManager::Destroy ( )

Destroys both native modules.

Idempotent; called by the owning environment during teardown.

◆ GetConfigRegistry()

std::string senzing::sdk::core::SzCoreConfigManager::GetConfigRegistry ( )
overridevirtual

Returns JSON describing all registered configurations.

Implements senzing::sdk::SzConfigManager.

◆ GetDefaultConfigID()

int64_t senzing::sdk::core::SzCoreConfigManager::GetDefaultConfigID ( )
overridevirtual

Returns the current default configuration ID.

Implements senzing::sdk::SzConfigManager.

◆ IsDestroyed()

bool senzing::sdk::core::SzCoreConfigManager::IsDestroyed ( )

True once the native SzConfig_* module has been destroyed.

◆ operator=()

SzCoreConfigManager & senzing::sdk::core::SzCoreConfigManager::operator= ( const SzCoreConfigManager )
delete

◆ RegisterConfig() [1/2]

int64_t senzing::sdk::core::SzCoreConfigManager::RegisterConfig ( const std::string &  configDefinition)
overridevirtual

Registers a config definition (auto-generated comment); returns the ID.

Implements senzing::sdk::SzConfigManager.

◆ RegisterConfig() [2/2]

int64_t senzing::sdk::core::SzCoreConfigManager::RegisterConfig ( const std::string &  configDefinition,
const std::string &  configComment 
)
overridevirtual

Registers a config definition with a comment; returns the new config ID.

Implements senzing::sdk::SzConfigManager.

◆ ReplaceDefaultConfigID()

void senzing::sdk::core::SzCoreConfigManager::ReplaceDefaultConfigID ( int64_t  currentDefaultConfigID,
int64_t  newDefaultConfigID 
)
overridevirtual

Atomically replaces the default config ID if it currently matches currentDefaultConfigID.

Implements senzing::sdk::SzConfigManager.

◆ SetDefaultConfig() [1/2]

int64_t senzing::sdk::core::SzCoreConfigManager::SetDefaultConfig ( const std::string &  configDefinition)
overridevirtual

Registers configDefinition (auto comment) and sets it as default.

Implements senzing::sdk::SzConfigManager.

◆ SetDefaultConfig() [2/2]

int64_t senzing::sdk::core::SzCoreConfigManager::SetDefaultConfig ( const std::string &  configDefinition,
const std::string &  configComment 
)
overridevirtual

Registers configDefinition (with comment) and sets it as default; returns the new config ID.

Implements senzing::sdk::SzConfigManager.

◆ SetDefaultConfigID()

void senzing::sdk::core::SzCoreConfigManager::SetDefaultConfigID ( int64_t  configID)
overridevirtual

Sets the default configuration ID.

Implements senzing::sdk::SzConfigManager.


The documentation for this class was generated from the following file: