本文整理汇总了C++中rpc::RequestInterface::getMetadata方法的典型用法代码示例。如果您正苦于以下问题:C++ RequestInterface::getMetadata方法的具体用法?C++ RequestInterface::getMetadata怎么用?C++ RequestInterface::getMetadata使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rpc::RequestInterface
的用法示例。
在下文中一共展示了RequestInterface::getMetadata方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: execCommand
// called into by the web server. For now we just translate the parameters
// to their old style equivalents.
void Command::execCommand(OperationContext* txn,
Command* command,
const rpc::RequestInterface& request,
rpc::ReplyBuilderInterface* replyBuilder) {
int queryFlags = 0;
BSONObj cmdObj;
std::tie(cmdObj, queryFlags) = uassertStatusOK(
rpc::downconvertRequestMetadata(request.getCommandArgs(),
request.getMetadata())
);
std::string db = request.getDatabase().rawData();
BSONObjBuilder result;
execCommandClientBasic(txn,
command,
*txn->getClient(),
queryFlags,
request.getDatabase().rawData(),
cmdObj,
result);
replyBuilder
->setMetadata(rpc::makeEmptyMetadata())
.setCommandReply(result.done());
}
示例2: generateErrorResponse
void Command::generateErrorResponse(OperationContext* txn,
rpc::ReplyBuilderInterface* replyBuilder,
const DBException& exception,
const rpc::RequestInterface& request,
Command* command,
const BSONObj& metadata) {
LOG(1) << "assertion while executing command '" << request.getCommandName() << "' "
<< "on database '" << request.getDatabase() << "' "
<< "with arguments '" << command->getRedactedCopyForLogging(request.getCommandArgs())
<< "' "
<< "and metadata '" << request.getMetadata() << "': " << exception.toString();
_generateErrorResponse(txn, replyBuilder, exception, metadata);
}