本文整理汇总了C++中Endpoint::parse_string方法的典型用法代码示例。如果您正苦于以下问题:C++ Endpoint::parse_string方法的具体用法?C++ Endpoint::parse_string怎么用?C++ Endpoint::parse_string使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Endpoint
的用法示例。
在下文中一共展示了Endpoint::parse_string方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: sizeof
bool
Lorica::Config::init_endpoints(bool do_extern)
{
std::string eps_str = do_extern ?
this->get_value("External_Address") :
this->get_value("Internal_Address");
size_t pos = 0;
size_t tpos = 0;
if (eps_str.empty() || !eps_str.length()) {
if (do_extern) {
char host_name[HOST_NAME_MAX] = { '\0' };
ACE_OS::hostname(host_name, sizeof(host_name));
eps_str = (const char*)host_name;
eps_str += ":"LORICA_DEFAULT_OUTSIDE_FACING_PORT_STR;
ACE_DEBUG((LM_WARNING,
ACE_TEXT("%N:%l - DEPRECATED: Using default endpoint value (%s) for outside facing endpoint\n"),
eps_str.c_str()));
} else {
eps_str = "localhost:"LORICA_DEFAULT_INSIDE_FACING_PORT_STR;
ACE_DEBUG((LM_WARNING,
ACE_TEXT("%N:%l - DEPRECATED: Using default endpoint value (%s) for inside facing endpoint\n"),
eps_str.c_str()));
}
}
for (; tpos != std::string::npos; pos = tpos + 1) {
tpos = eps_str.find(' ', pos);
std::string ep_str = (tpos == std::string::npos) ? eps_str.substr(pos) : eps_str.substr(pos, tpos-pos);
if (ep_str.empty())
break;
ACE_DEBUG((LM_DEBUG,
ACE_TEXT("%N:%l - %C Endpoint String - %C\n"),
(do_extern ? "External" : "Internal"),
ep_str.c_str()));
Endpoint ep;
ep.external_ = do_extern;
if (ep.parse_string(ep_str, do_extern))
endpoints_.push_back(ep);
else
return false;
}
return true;
}