本文整理汇总了C++中ACE_Configuration_Heap::enumerate_values方法的典型用法代码示例。如果您正苦于以下问题:C++ ACE_Configuration_Heap::enumerate_values方法的具体用法?C++ ACE_Configuration_Heap::enumerate_values怎么用?C++ ACE_Configuration_Heap::enumerate_values使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ACE_Configuration_Heap
的用法示例。
在下文中一共展示了ACE_Configuration_Heap::enumerate_values方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: pullValues
int pullValues( ACE_Configuration_Heap& cf,
const ACE_Configuration_Section_Key& key,
ValueMap& values ) {
int index = 0;
ACE_TString name;
ACE_Configuration::VALUETYPE type;
while (cf.enumerate_values( key, index, name, type ) == 0) {
ACE_TString value;
if (type == ACE_Configuration::STRING) {
cf.get_string_value( key, name.c_str(), value );
values[ACE_TEXT_ALWAYS_CHAR(name.c_str())] =
ACE_TEXT_ALWAYS_CHAR(value.c_str());
} else {
ACE_DEBUG((LM_WARNING, "Unexpected value type in config file (ignored): "
"name=%s, type=%d\n", name.c_str(), type));
}
index++;
}
return index;
}
示例2: iniIO
int
Service_Monitor::load(const char* ini_file)
{
int rc = -1;
// load ini file
ACE_Configuration_Heap config;
config.open();
ACE_Ini_ImpExp iniIO(config);
rc = iniIO.import_config(ini_file_.c_str());
if ( rc != 0 )
return rc;
// clear monitors
monitors_.clear();
ini_file_ = ini_file;
// read monitors
ACE_Configuration_Section_Key sec;
config.open_section(config.root_section(), ACE_TEXT("*"), 0, sec);
ACE_TString name;
ACE_Configuration::VALUETYPE val_type;
for(int i = 0;
config.enumerate_values(sec, i, name, val_type) == 0;
++i)
{
ACE_TString value;
config.get_string_value(sec, name.c_str(), value);
int monitor_sec = ACE_OS::atoi(value.c_str());
if ( monitor_sec >= 0 )
monitors_.insert(std::make_pair(name.c_str(), monitor_sec));
}
return rc;
}