summaryrefslogtreecommitdiff
path: root/src/mongo/db/lasterror.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/lasterror.cpp')
-rw-r--r--src/mongo/db/lasterror.cpp128
1 files changed, 63 insertions, 65 deletions
diff --git a/src/mongo/db/lasterror.cpp b/src/mongo/db/lasterror.cpp
index d242cdedc1a..624329c4ddd 100644
--- a/src/mongo/db/lasterror.cpp
+++ b/src/mongo/db/lasterror.cpp
@@ -36,82 +36,80 @@
namespace mongo {
- LastError LastError::noError;
+LastError LastError::noError;
- const Client::Decoration<LastError> LastError::get = Client::declareDecoration<LastError>();
+const Client::Decoration<LastError> LastError::get = Client::declareDecoration<LastError>();
- void LastError::reset(bool valid) {
- *this = LastError();
- _valid = valid;
- }
+void LastError::reset(bool valid) {
+ *this = LastError();
+ _valid = valid;
+}
- void LastError::setLastError(int code, std::string msg) {
- if (_disabled) {
- return;
- }
- reset(true);
- _code = code;
- _msg = std::move(msg);
+void LastError::setLastError(int code, std::string msg) {
+ if (_disabled) {
+ return;
}
-
- void LastError::recordInsert(long long nObjects) {
- reset(true);
- _nObjects = nObjects;
+ reset(true);
+ _code = code;
+ _msg = std::move(msg);
+}
+
+void LastError::recordInsert(long long nObjects) {
+ reset(true);
+ _nObjects = nObjects;
+}
+
+void LastError::recordUpdate(bool updateObjects, long long nObjects, BSONObj upsertedId) {
+ reset(true);
+ _nObjects = nObjects;
+ _updatedExisting = updateObjects ? True : False;
+ if (upsertedId.valid() && upsertedId.hasField(kUpsertedFieldName))
+ _upsertedId = upsertedId;
+}
+
+void LastError::recordDelete(long long nDeleted) {
+ reset(true);
+ _nObjects = nDeleted;
+}
+
+bool LastError::appendSelf(BSONObjBuilder& b, bool blankErr) const {
+ if (!_valid) {
+ if (blankErr)
+ b.appendNull("err");
+ b.append("n", 0);
+ return false;
}
- void LastError::recordUpdate(bool updateObjects, long long nObjects, BSONObj upsertedId) {
- reset(true);
- _nObjects = nObjects;
- _updatedExisting = updateObjects ? True : False;
- if ( upsertedId.valid() && upsertedId.hasField(kUpsertedFieldName) )
- _upsertedId = upsertedId;
+ if (_msg.empty()) {
+ if (blankErr) {
+ b.appendNull("err");
+ }
+ } else {
+ b.append("err", _msg);
}
- void LastError::recordDelete(long long nDeleted) {
- reset(true);
- _nObjects = nDeleted;
+ if (_code)
+ b.append("code", _code);
+ if (_updatedExisting != NotUpdate)
+ b.appendBool("updatedExisting", _updatedExisting == True);
+ if (!_upsertedId.isEmpty()) {
+ b.append(_upsertedId[kUpsertedFieldName]);
}
+ b.appendNumber("n", _nObjects);
- bool LastError::appendSelf(BSONObjBuilder &b , bool blankErr) const {
+ return !_msg.empty();
+}
- if (!_valid) {
- if (blankErr)
- b.appendNull( "err" );
- b.append( "n", 0 );
- return false;
- }
- if (_msg.empty()) {
- if (blankErr) {
- b.appendNull( "err" );
- }
- }
- else {
- b.append("err", _msg);
- }
+void LastError::disable() {
+ invariant(!_disabled);
+ _disabled = true;
+ _nPrev--; // caller is a command that shouldn't count as an operation
+}
- if (_code)
- b.append("code" , _code);
- if (_updatedExisting != NotUpdate)
- b.appendBool("updatedExisting", _updatedExisting == True);
- if (!_upsertedId.isEmpty()) {
- b.append(_upsertedId[kUpsertedFieldName]);
- }
- b.appendNumber("n", _nObjects);
-
- return !_msg.empty();
- }
-
-
- void LastError::disable() {
- invariant(!_disabled);
- _disabled = true;
- _nPrev--; // caller is a command that shouldn't count as an operation
- }
-
- void LastError::startRequest() {
- _disabled = false;
- ++_nPrev;
- }
+void LastError::startRequest() {
+ _disabled = false;
+ ++_nPrev;
+}
-} // namespace mongo
+} // namespace mongo