Интерфейс IConfigManagerClient

Интерфейс IConfigManagerClient предоставляет методы для управления конфигурациями программ. В прикладных программах вы можете только получать конфигурацию и проверять существование конфигурации для своей программы. Получить имя своей конфигурации вы можете из переменной окружения с помощью метода std::getenv("CONFIG_NAME").

Описание интерфейса IConfigManagerClient представлено в следующих файлах:

Получение конфигурации

Для получения конфигурации на языке C++ используется метод IConfigManagerClient::GetConfig(). Метод принимает имя конфигурации и помещает в выходной параметр значение конфигурации.

config_manager_client.h (фрагмент)

class IConfigManagerClient

{

...

virtual Result GetConfig(const std::string& configName, Value& configValue) const = 0;

...

}

Для получения конфигурации на языке C используется функция ConfigManagerClientGetConfig(). Функция принимает указатель на структуру типа ConfigManagerClientForC, имя конфигурации и помещает в выходной параметр значение конфигурации.

config_manager_client_for_c.h (фрагмент)

...

Retcode ConfigManagerClientGetConfig(ConfigManagerClientForC* client, const char* configName, ConfigManagerValueForC** configValue);

...

Установка конфигурации

В результате применения измененной конфигурации происходит слияние двух конфигураций – текущей и измененной.

Для установки конфигурации на языке C++ используется метод IConfigManagerClient::SetConfig(). Метод принимает имя конфигурации и значение конфигурации.

Вызов этого метода запрещен в прикладных программах. Для установки конфигурации вы можете использовать пользовательский интерфейс программы в веб-плагине управления Kaspersky IoT Secure Gateway 1000 веб-консоли Kaspersky Security Center.

config_manager_client.h (фрагмент)

class IConfigManagerClient

{

...

virtual Result SetConfig(const std::string& configName, const Value& configValue) = 0;

...

}

Для установки конфигурации на языке C используется функция ConfigManagerClientSetConfig(). Функция принимает указатель на структуру типа ConfigManagerClientForC, имя конфигурации и значение конфигурации.

config_manager_client_for_c.h (фрагмент)

...

Retcode ConfigManagerClientSetConfig(ConfigManagerClientForC* client, const char* configName, const ConfigManagerValueForC* configValue);

...

Проверка существования конфигурации

Для проверки существования конфигурации на языке C++ используется метод IConfigManagerClient::HasConfig(). Метод принимает имя конфигурации и в выходной параметр помещает значение true, если конфигурация существует, и false, если конфигурация отсутствует.

config_manager_client.h (фрагмент)

class IConfigManagerClient

{

...

virtual Result HasConfig(const std::string& configName, bool& hasConfig) const = 0;

...

}

Для проверки существования конфигурации на языке C используется функция ConfigManagerClientHasConfig(). Функция принимает указатель на структуру типа SConfigManagerClientForC, имя конфигурации и в выходной параметр помещает значение true, если конфигурация существует, и false, если конфигурация отсутствует.

config_manager_client_for_c.h (фрагмент)

...

Retcode ConfigManagerClientHasConfig(ConfigManagerClientForC* client, const char* configName, int* hasConfig);

...

В начало