summaryrefslogtreecommitdiff
path: root/src/mongo/s/grid.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/grid.h
parent2d487da181d970df760a40ee253398255ca240d0 (diff)
downloadmongo-e324289ed29a41f0f6f610dc63ab5d2ce1f9c351.tar.gz
SERVER-24323 Add ShardingCatalogManager and move addShard implementation into it
Diffstat (limited to 'src/mongo/s/grid.h')
-rw-r--r--src/mongo/s/grid.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mongo/s/grid.h b/src/mongo/s/grid.h
index 4cc1cf71970..54ff81f1a5b 100644
--- a/src/mongo/s/grid.h
+++ b/src/mongo/s/grid.h
@@ -38,6 +38,7 @@ namespace mongo {
class BalancerConfiguration;
class CatalogCache;
class ShardingCatalogClient;
+class ShardingCatalogManager;
class ClusterCursorManager;
class OperationContext;
class ShardRegistry;
@@ -69,6 +70,7 @@ public:
* state using clearForUnitTests.
*/
void init(std::unique_ptr<ShardingCatalogClient> catalogClient,
+ std::unique_ptr<ShardingCatalogManager> catalogManager,
std::unique_ptr<CatalogCache> catalogCache,
std::unique_ptr<ShardRegistry> shardRegistry,
std::unique_ptr<ClusterCursorManager> cursorManager,
@@ -98,6 +100,14 @@ public:
return _catalogClient.get();
}
+ /**
+ * Returns a pointer to a ShardingCatalogManager to use for manipulating catalog data stored on
+ * the config servers.
+ */
+ ShardingCatalogManager* catalogManager() {
+ return _catalogManager.get();
+ }
+
CatalogCache* catalogCache() const {
return _catalogCache.get();
}
@@ -149,6 +159,7 @@ public:
private:
std::unique_ptr<ShardingCatalogClient> _catalogClient;
+ std::unique_ptr<ShardingCatalogManager> _catalogManager;
std::unique_ptr<CatalogCache> _catalogCache;
std::unique_ptr<ShardRegistry> _shardRegistry;
std::unique_ptr<ClusterCursorManager> _cursorManager;