summaryrefslogtreecommitdiff
path: root/src/mongo/s/sharding_initialization.h
diff options
context:
space:
mode:
authorSpencer T Brody <spencer@mongodb.com>2016-06-01 16:55:05 -0400
committerSpencer T Brody <spencer@mongodb.com>2016-06-13 19:02:47 -0400
commite324289ed29a41f0f6f610dc63ab5d2ce1f9c351 (patch)
tree07b7159767295a97c310816f56d9dea0f534d6fd /src/mongo/s/sharding_initialization.h
parent2d487da181d970df760a40ee253398255ca240d0 (diff)
downloadmongo-e324289ed29a41f0f6f610dc63ab5d2ce1f9c351.tar.gz
SERVER-24323 Add ShardingCatalogManager and move addShard implementation into it
Diffstat (limited to 'src/mongo/s/sharding_initialization.h')
-rw-r--r--src/mongo/s/sharding_initialization.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/mongo/s/sharding_initialization.h b/src/mongo/s/sharding_initialization.h
index b7cb2e174f0..a782dc6474a 100644
--- a/src/mongo/s/sharding_initialization.h
+++ b/src/mongo/s/sharding_initialization.h
@@ -35,10 +35,18 @@
namespace mongo {
+namespace executor {
+class TaskExecutor;
+} // namespace executor
+
class ConnectionString;
class OperationContext;
class ShardFactory;
class Status;
+class ShardingCatalogClient;
+class ShardingCatalogManager;
+using ShardingCatalogManagerBuilder = stdx::function<std::unique_ptr<ShardingCatalogManager>(
+ ShardingCatalogClient*, std::unique_ptr<executor::TaskExecutor>)>;
namespace rpc {
class ShardingEgressMetadataHook;
@@ -52,7 +60,8 @@ using ShardingEgressMetadataHookBuilder =
*/
Status initializeGlobalShardingState(const ConnectionString& configCS,
std::unique_ptr<ShardFactory> shardFactory,
- rpc::ShardingEgressMetadataHookBuilder hookBuilder);
+ rpc::ShardingEgressMetadataHookBuilder hookBuilder,
+ ShardingCatalogManagerBuilder catalogManagerBuilder);
/**
* Tries to contact the config server and reload the shard registry until it succeeds or