summaryrefslogtreecommitdiff
path: root/s/request.h
diff options
context:
space:
mode:
authorEliot Horowitz <eliot@10gen.com>2009-02-20 10:46:42 -0500
committerEliot Horowitz <eliot@10gen.com>2009-02-20 10:46:42 -0500
commit5f6aa4f67d9bf3bd6a4345db2af9c76647b677d2 (patch)
tree6cffec746ef93723db903d2cf8be8923bf9e2aba /s/request.h
parent30f3acd4459cd4c13608a8be81624ba8574582da (diff)
downloadmongo-5f6aa4f67d9bf3bd6a4345db2af9c76647b677d2.tar.gz
insert shard checkpoint
Diffstat (limited to 's/request.h')
-rw-r--r--s/request.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/s/request.h b/s/request.h
index f251fbf1cad..0070cc5041c 100644
--- a/s/request.h
+++ b/s/request.h
@@ -9,7 +9,7 @@
namespace mongo {
- class Request {
+ class Request : boost::noncopyable {
public:
Request( Message& m, MessagingPort& p );
@@ -34,6 +34,10 @@ namespace mongo {
return _config;
}
+ ShardInfo * getShardInfo(){
+ return _shardInfo;
+ }
+
// ---- remote location info -----
@@ -67,12 +71,17 @@ namespace mongo {
class Strategy {
public:
+ Strategy(){}
virtual ~Strategy() {}
virtual void queryOp( Request& r ) = 0;
virtual void getMore( Request& r ) = 0;
virtual void writeOp( int op , Request& r ) = 0;
+
+ protected:
+ void doWrite( int op , Request& r , string server );
+ void insert( string server , const char * ns , const BSONObj& obj );
};
extern Strategy * SINGLE;
- extern Strategy * RANDOM;
+ extern Strategy * SHARDED;
}