summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/read_concern_args.h
diff options
context:
space:
mode:
authorRandolph Tan <randolph@10gen.com>2015-08-07 15:12:15 -0400
committerRandolph Tan <randolph@10gen.com>2015-08-11 12:08:51 -0400
commit8117ecc138e9f87ade5a475a2695d1e39f474d8c (patch)
tree0e5d0ba0a8bc3cde3cac62ce2c36f692e07a86eb /src/mongo/db/repl/read_concern_args.h
parent8e2990da71c1498d2a979ef47c07c2bfc2fa4f97 (diff)
downloadmongo-8117ecc138e9f87ade5a475a2695d1e39f474d8c.tar.gz
SERVER-19390 Make read concern args accept optional parameters
Diffstat (limited to 'src/mongo/db/repl/read_concern_args.h')
-rw-r--r--src/mongo/db/repl/read_concern_args.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/mongo/db/repl/read_concern_args.h b/src/mongo/db/repl/read_concern_args.h
index 1876d7a3d2d..c6f3605a9fb 100644
--- a/src/mongo/db/repl/read_concern_args.h
+++ b/src/mongo/db/repl/read_concern_args.h
@@ -28,6 +28,7 @@
#pragma once
+#include <boost/optional.hpp>
#include <string>
#include "mongo/base/status.h"
@@ -42,7 +43,6 @@ namespace repl {
enum class ReadConcernLevel { kLocalReadConcern, kMajorityReadConcern, kLinearizableReadConcern };
-// TODO: make this reflect the fact that level and afterOpTime are in fact optional.
class ReadConcernArgs {
public:
static const std::string kReadConcernFieldName;
@@ -52,7 +52,7 @@ public:
static const std::string kLevelFieldName;
ReadConcernArgs();
- ReadConcernArgs(OpTime opTime, ReadConcernLevel level);
+ ReadConcernArgs(boost::optional<OpTime> opTime, boost::optional<ReadConcernLevel> level);
/**
* Format:
@@ -73,11 +73,11 @@ public:
void appendInfo(BSONObjBuilder* builder);
ReadConcernLevel getLevel() const;
- const OpTime& getOpTime() const;
+ OpTime getOpTime() const;
private:
- OpTime _opTime;
- ReadConcernLevel _level;
+ boost::optional<OpTime> _opTime;
+ boost::optional<ReadConcernLevel> _level;
};
} // namespace repl