summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/replication_coordinator_mock.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/replication_coordinator_mock.h')
-rw-r--r--src/mongo/db/repl/replication_coordinator_mock.h215
1 files changed, 102 insertions, 113 deletions
diff --git a/src/mongo/db/repl/replication_coordinator_mock.h b/src/mongo/db/repl/replication_coordinator_mock.h
index 2f404b3d157..2856878bd6f 100644
--- a/src/mongo/db/repl/replication_coordinator_mock.h
+++ b/src/mongo/db/repl/replication_coordinator_mock.h
@@ -35,187 +35,176 @@
namespace mongo {
namespace repl {
- /**
- * A mock ReplicationCoordinator. Currently it is extremely simple and exists solely to link
- * into dbtests.
- */
- class ReplicationCoordinatorMock : public ReplicationCoordinator {
- MONGO_DISALLOW_COPYING(ReplicationCoordinatorMock);
-
- public:
-
- ReplicationCoordinatorMock(const ReplSettings& settings);
- virtual ~ReplicationCoordinatorMock();
+/**
+ * A mock ReplicationCoordinator. Currently it is extremely simple and exists solely to link
+ * into dbtests.
+ */
+class ReplicationCoordinatorMock : public ReplicationCoordinator {
+ MONGO_DISALLOW_COPYING(ReplicationCoordinatorMock);
- virtual void startReplication(OperationContext* txn);
+public:
+ ReplicationCoordinatorMock(const ReplSettings& settings);
+ virtual ~ReplicationCoordinatorMock();
- virtual void shutdown();
+ virtual void startReplication(OperationContext* txn);
- virtual const ReplSettings& getSettings() const;
+ virtual void shutdown();
- virtual bool isReplEnabled() const;
+ virtual const ReplSettings& getSettings() const;
- virtual Mode getReplicationMode() const;
+ virtual bool isReplEnabled() const;
- virtual MemberState getMemberState() const;
+ virtual Mode getReplicationMode() const;
- virtual bool isInPrimaryOrSecondaryState() const;
+ virtual MemberState getMemberState() const;
- virtual Seconds getSlaveDelaySecs() const;
+ virtual bool isInPrimaryOrSecondaryState() const;
- virtual void clearSyncSourceBlacklist();
+ virtual Seconds getSlaveDelaySecs() const;
- virtual ReplicationCoordinator::StatusAndDuration awaitReplication(
- OperationContext* txn,
- const OpTime& opTime,
- const WriteConcernOptions& writeConcern);
+ virtual void clearSyncSourceBlacklist();
- virtual ReplicationCoordinator::StatusAndDuration awaitReplicationOfLastOpForClient(
- OperationContext* txn,
- const WriteConcernOptions& writeConcern);
+ virtual ReplicationCoordinator::StatusAndDuration awaitReplication(
+ OperationContext* txn, const OpTime& opTime, const WriteConcernOptions& writeConcern);
- virtual Status stepDown(OperationContext* txn,
- bool force,
- const Milliseconds& waitTime,
- const Milliseconds& stepdownTime);
+ virtual ReplicationCoordinator::StatusAndDuration awaitReplicationOfLastOpForClient(
+ OperationContext* txn, const WriteConcernOptions& writeConcern);
- virtual bool isMasterForReportingPurposes();
+ virtual Status stepDown(OperationContext* txn,
+ bool force,
+ const Milliseconds& waitTime,
+ const Milliseconds& stepdownTime);
- virtual bool canAcceptWritesForDatabase(StringData dbName);
+ virtual bool isMasterForReportingPurposes();
- bool canAcceptWritesFor(const NamespaceString& ns) override;
+ virtual bool canAcceptWritesForDatabase(StringData dbName);
- virtual Status checkIfWriteConcernCanBeSatisfied(
- const WriteConcernOptions& writeConcern) const;
+ bool canAcceptWritesFor(const NamespaceString& ns) override;
- virtual Status checkCanServeReadsFor(OperationContext* txn,
- const NamespaceString& ns,
- bool slaveOk);
+ virtual Status checkIfWriteConcernCanBeSatisfied(const WriteConcernOptions& writeConcern) const;
- virtual bool shouldIgnoreUniqueIndex(const IndexDescriptor* idx);
+ virtual Status checkCanServeReadsFor(OperationContext* txn,
+ const NamespaceString& ns,
+ bool slaveOk);
- virtual Status setLastOptimeForSlave(const OID& rid, const Timestamp& ts);
+ virtual bool shouldIgnoreUniqueIndex(const IndexDescriptor* idx);
- virtual void setMyLastOptime(const OpTime& opTime);
+ virtual Status setLastOptimeForSlave(const OID& rid, const Timestamp& ts);
- virtual void resetMyLastOptime();
+ virtual void setMyLastOptime(const OpTime& opTime);
- virtual void setMyHeartbeatMessage(const std::string& msg);
+ virtual void resetMyLastOptime();
- virtual OpTime getMyLastOptime() const;
+ virtual void setMyHeartbeatMessage(const std::string& msg);
- virtual ReadAfterOpTimeResponse waitUntilOpTime(
- OperationContext* txn,
- const ReadAfterOpTimeArgs& settings) override;
+ virtual OpTime getMyLastOptime() const;
- virtual OID getElectionId();
+ virtual ReadAfterOpTimeResponse waitUntilOpTime(OperationContext* txn,
+ const ReadAfterOpTimeArgs& settings) override;
- virtual OID getMyRID() const;
+ virtual OID getElectionId();
- virtual int getMyId() const;
+ virtual OID getMyRID() const;
- virtual bool setFollowerMode(const MemberState& newState);
+ virtual int getMyId() const;
- virtual bool isWaitingForApplierToDrain();
+ virtual bool setFollowerMode(const MemberState& newState);
- virtual void signalDrainComplete(OperationContext*);
+ virtual bool isWaitingForApplierToDrain();
- virtual void signalUpstreamUpdater();
+ virtual void signalDrainComplete(OperationContext*);
- virtual bool prepareReplSetUpdatePositionCommand(BSONObjBuilder* cmdBuilder);
+ virtual void signalUpstreamUpdater();
- virtual Status processReplSetGetStatus(BSONObjBuilder* result);
+ virtual bool prepareReplSetUpdatePositionCommand(BSONObjBuilder* cmdBuilder);
- virtual void fillIsMasterForReplSet(IsMasterResponse* result);
+ virtual Status processReplSetGetStatus(BSONObjBuilder* result);
- virtual void appendSlaveInfoData(BSONObjBuilder* result);
+ virtual void fillIsMasterForReplSet(IsMasterResponse* result);
- virtual ReplicaSetConfig getConfig() const;
+ virtual void appendSlaveInfoData(BSONObjBuilder* result);
- virtual void processReplSetGetConfig(BSONObjBuilder* result);
+ virtual ReplicaSetConfig getConfig() const;
- virtual Status setMaintenanceMode(bool activate);
+ virtual void processReplSetGetConfig(BSONObjBuilder* result);
- virtual bool getMaintenanceMode();
+ virtual Status setMaintenanceMode(bool activate);
- virtual Status processReplSetSyncFrom(const HostAndPort& target,
- BSONObjBuilder* resultObj);
+ virtual bool getMaintenanceMode();
- virtual Status processReplSetFreeze(int secs, BSONObjBuilder* resultObj);
+ virtual Status processReplSetSyncFrom(const HostAndPort& target, BSONObjBuilder* resultObj);
- virtual Status processHeartbeat(const ReplSetHeartbeatArgs& args,
- ReplSetHeartbeatResponse* response);
+ virtual Status processReplSetFreeze(int secs, BSONObjBuilder* resultObj);
- virtual Status processReplSetReconfig(OperationContext* txn,
- const ReplSetReconfigArgs& args,
- BSONObjBuilder* resultObj);
+ virtual Status processHeartbeat(const ReplSetHeartbeatArgs& args,
+ ReplSetHeartbeatResponse* response);
- virtual Status processReplSetInitiate(OperationContext* txn,
- const BSONObj& configObj,
- BSONObjBuilder* resultObj);
+ virtual Status processReplSetReconfig(OperationContext* txn,
+ const ReplSetReconfigArgs& args,
+ BSONObjBuilder* resultObj);
- virtual Status processReplSetGetRBID(BSONObjBuilder* resultObj);
+ virtual Status processReplSetInitiate(OperationContext* txn,
+ const BSONObj& configObj,
+ BSONObjBuilder* resultObj);
- virtual void incrementRollbackID();
+ virtual Status processReplSetGetRBID(BSONObjBuilder* resultObj);
- virtual Status processReplSetFresh(const ReplSetFreshArgs& args,
- BSONObjBuilder* resultObj);
+ virtual void incrementRollbackID();
- virtual Status processReplSetElect(const ReplSetElectArgs& args,
- BSONObjBuilder* resultObj);
+ virtual Status processReplSetFresh(const ReplSetFreshArgs& args, BSONObjBuilder* resultObj);
- virtual Status processReplSetUpdatePosition(const UpdatePositionArgs& updates,
- long long* configVersion);
+ virtual Status processReplSetElect(const ReplSetElectArgs& args, BSONObjBuilder* resultObj);
- virtual Status processHandshake(OperationContext* txn, const HandshakeArgs& handshake);
+ virtual Status processReplSetUpdatePosition(const UpdatePositionArgs& updates,
+ long long* configVersion);
- virtual bool buildsIndexes();
+ virtual Status processHandshake(OperationContext* txn, const HandshakeArgs& handshake);
- virtual std::vector<HostAndPort> getHostsWrittenTo(const OpTime& op);
+ virtual bool buildsIndexes();
- virtual std::vector<HostAndPort> getOtherNodesInReplSet() const;
+ virtual std::vector<HostAndPort> getHostsWrittenTo(const OpTime& op);
- virtual WriteConcernOptions getGetLastErrorDefault();
+ virtual std::vector<HostAndPort> getOtherNodesInReplSet() const;
- virtual Status checkReplEnabledForCommand(BSONObjBuilder* result);
+ virtual WriteConcernOptions getGetLastErrorDefault();
- virtual HostAndPort chooseNewSyncSource();
+ virtual Status checkReplEnabledForCommand(BSONObjBuilder* result);
- virtual void blacklistSyncSource(const HostAndPort& host, Date_t until);
+ virtual HostAndPort chooseNewSyncSource();
- virtual void resetLastOpTimeFromOplog(OperationContext* txn);
+ virtual void blacklistSyncSource(const HostAndPort& host, Date_t until);
- virtual bool shouldChangeSyncSource(const HostAndPort& currentSource);
+ virtual void resetLastOpTimeFromOplog(OperationContext* txn);
- virtual OpTime getLastCommittedOpTime() const;
+ virtual bool shouldChangeSyncSource(const HostAndPort& currentSource);
- virtual Status processReplSetRequestVotes(OperationContext* txn,
- const ReplSetRequestVotesArgs& args,
- ReplSetRequestVotesResponse* response);
+ virtual OpTime getLastCommittedOpTime() const;
- virtual Status processReplSetDeclareElectionWinner(
- const ReplSetDeclareElectionWinnerArgs& args,
- long long* responseTerm);
+ virtual Status processReplSetRequestVotes(OperationContext* txn,
+ const ReplSetRequestVotesArgs& args,
+ ReplSetRequestVotesResponse* response);
- virtual void prepareCursorResponseInfo(BSONObjBuilder* objBuilder);
+ virtual Status processReplSetDeclareElectionWinner(const ReplSetDeclareElectionWinnerArgs& args,
+ long long* responseTerm);
- virtual Status processHeartbeatV1(const ReplSetHeartbeatArgsV1& args,
- ReplSetHeartbeatResponse* response);
+ virtual void prepareCursorResponseInfo(BSONObjBuilder* objBuilder);
- virtual bool isV1ElectionProtocol();
+ virtual Status processHeartbeatV1(const ReplSetHeartbeatArgsV1& args,
+ ReplSetHeartbeatResponse* response);
- virtual void summarizeAsHtml(ReplSetHtmlSummary* output);
+ virtual bool isV1ElectionProtocol();
- virtual long long getTerm();
+ virtual void summarizeAsHtml(ReplSetHtmlSummary* output);
- virtual bool updateTerm(long long term);
+ virtual long long getTerm();
- private:
+ virtual bool updateTerm(long long term);
- const ReplSettings _settings;
- MemberState _memberState;
- OpTime _myLastOpTime;
- };
+private:
+ const ReplSettings _settings;
+ MemberState _memberState;
+ OpTime _myLastOpTime;
+};
-} // namespace repl
-} // namespace mongo
+} // namespace repl
+} // namespace mongo