本文整理汇总了C++中MasterInfo::mutable_address方法的典型用法代码示例。如果您正苦于以下问题:C++ MasterInfo::mutable_address方法的具体用法?C++ MasterInfo::mutable_address怎么用?C++ MasterInfo::mutable_address使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MasterInfo
的用法示例。
在下文中一共展示了MasterInfo::mutable_address方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createMasterInfo
/**
* Creates a MasterInfo protobuf from the process's UPID.
*
* This is only used by the `StandaloneMasterDetector` (used in tests
* and outside tests when ZK is not used).
*
* For example, when we start a slave with
* `[email protected]:5050`, since the slave (and consequently
* its detector) doesn't have enough information about `MasterInfo`, it
* tries to construct it based on the only available information
* (`UPID`).
*
* @param pid The process's assigned untyped PID.
* @return A fully formed `MasterInfo` with the IP/hostname information
* as derived from the `UPID`.
*/
MasterInfo createMasterInfo(const UPID& pid)
{
MasterInfo info;
info.set_id(stringify(pid) + "-" + UUID::random().toString());
// NOTE: Currently, we store the ip in network order, which should
// be fixed. See MESOS-1201 for more details.
// TODO(marco): `ip` and `port` are deprecated in favor of `address`;
// remove them both after the deprecation cycle.
info.set_ip(pid.address.ip.in().get().s_addr);
info.set_port(pid.address.port);
info.mutable_address()->set_ip(stringify(pid.address.ip));
info.mutable_address()->set_port(pid.address.port);
info.set_pid(pid);
Try<string> hostname = net::getHostname(pid.address.ip);
if (hostname.isSome()) {
// Hostname is deprecated; but we need to update it
// to maintain backward compatibility.
// TODO(marco): Remove once we deprecate it.
info.set_hostname(hostname.get());
info.mutable_address()->set_hostname(hostname.get());
}
return info;
}