diff options
author | Adam Midvidy <amidvidy@gmail.com> | 2015-11-12 00:37:49 -0500 |
---|---|---|
committer | Adam Midvidy <amidvidy@gmail.com> | 2015-11-13 10:50:32 -0500 |
commit | 289d3fdf5c9d5b232b383c6cd871de1b75cf76b4 (patch) | |
tree | 58bcb98e92fb61e805674afbfb6db775959889dd /src/mongo/rpc/command_request_builder.cpp | |
parent | d7511a9244ecab9ea894bb4e8767a289314a1e34 (diff) | |
download | mongo-289d3fdf5c9d5b232b383c6cd871de1b75cf76b4.tar.gz |
SERVER-20884 build command replies in-place to avoid copies
Diffstat (limited to 'src/mongo/rpc/command_request_builder.cpp')
-rw-r--r-- | src/mongo/rpc/command_request_builder.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mongo/rpc/command_request_builder.cpp b/src/mongo/rpc/command_request_builder.cpp index 60a013d218f..3945b6219a4 100644 --- a/src/mongo/rpc/command_request_builder.cpp +++ b/src/mongo/rpc/command_request_builder.cpp @@ -57,13 +57,6 @@ CommandRequestBuilder& CommandRequestBuilder::setDatabase(StringData database) { CommandRequestBuilder& CommandRequestBuilder::setCommandName(StringData commandName) { invariant(_state == State::kCommandName); _builder.appendStr(commandName); - _state = State::kMetadata; - return *this; -} - -CommandRequestBuilder& CommandRequestBuilder::setMetadata(BSONObj metadata) { - invariant(_state == State::kMetadata); - metadata.appendSelfToBufBuilder(_builder); _state = State::kCommandArgs; return *this; } @@ -71,6 +64,13 @@ CommandRequestBuilder& CommandRequestBuilder::setMetadata(BSONObj metadata) { CommandRequestBuilder& CommandRequestBuilder::setCommandArgs(BSONObj commandArgs) { invariant(_state == State::kCommandArgs); commandArgs.appendSelfToBufBuilder(_builder); + _state = State::kMetadata; + return *this; +} + +CommandRequestBuilder& CommandRequestBuilder::setMetadata(BSONObj metadata) { + invariant(_state == State::kMetadata); + metadata.appendSelfToBufBuilder(_builder); _state = State::kInputDocs; return *this; } |