本文整理汇总了C++中RoutableMessageHeader::has_reply_id方法的典型用法代码示例。如果您正苦于以下问题:C++ RoutableMessageHeader::has_reply_id方法的具体用法?C++ RoutableMessageHeader::has_reply_id怎么用?C++ RoutableMessageHeader::has_reply_id使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RoutableMessageHeader
的用法示例。
在下文中一共展示了RoutableMessageHeader::has_reply_id方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: processMessage
void QueryTracker::processMessage(const RoutableMessageHeader &msgHeader, MemoryReference body) {
if (!msgHeader.has_reply_id()) {
SILOG(cppoh, error, "QueryTracker::processMessage called for non-reply");
return; // Not a response message--shouldn't have gotten here.
}
// This is a response message;
int64 id = msgHeader.reply_id();
SentMessageMap::iterator iter = mSentMessages.find(id);
if (iter != mSentMessages.end()) {
if ((!iter->second->header().has_destination_space() ||
iter->second->header().destination_space() == msgHeader.destination_space()) &&
iter->second->getRecipient() == msgHeader.source_object())
{
iter->second->processMessage(msgHeader, body);
} else {
ObjectReference dest(ObjectReference::null());
if (msgHeader.has_destination_object()) {
dest = msgHeader.destination_object();
}
std::ostringstream os;
os << "Response message with ID "<<id<<" to object "<<dest<<
" should come from "<<iter->second->getRecipient() <<
" but instead came from " <<msgHeader.source_object();
SILOG(cppoh, warning, os.str());
}
} else {
SILOG(cppoh, warning, "Got a reply for unknown query ID "<<id);
}
}