summaryrefslogtreecommitdiff
path: root/src/mongo/db/catalog/index_catalog_impl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/catalog/index_catalog_impl.cpp')
-rw-r--r--src/mongo/db/catalog/index_catalog_impl.cpp45
1 files changed, 20 insertions, 25 deletions
diff --git a/src/mongo/db/catalog/index_catalog_impl.cpp b/src/mongo/db/catalog/index_catalog_impl.cpp
index e19773b34fd..76bb7aa4b8a 100644
--- a/src/mongo/db/catalog/index_catalog_impl.cpp
+++ b/src/mongo/db/catalog/index_catalog_impl.cpp
@@ -70,38 +70,33 @@
#include "mongo/util/represent_as.h"
namespace mongo {
-namespace {
-MONGO_INITIALIZER(InitializeIndexCatalogFactory)(InitializerContext* const) {
- IndexCatalog::registerFactory([](
- IndexCatalog* const this_, Collection* const collection, const int maxNumIndexesAllowed) {
- return stdx::make_unique<IndexCatalogImpl>(this_, collection, maxNumIndexesAllowed);
- });
- return Status::OK();
+MONGO_REGISTER_SHIM(IndexCatalog::makeImpl)
+(IndexCatalog* const this_,
+ Collection* const collection,
+ const int maxNumIndexesAllowed,
+ PrivateTo<IndexCatalog>)
+ ->std::unique_ptr<IndexCatalog::Impl> {
+ return std::make_unique<IndexCatalogImpl>(this_, collection, maxNumIndexesAllowed);
}
-MONGO_INITIALIZER(InitializeIndexCatalogIndexIteratorFactory)(InitializerContext* const) {
- IndexCatalog::IndexIterator::registerFactory([](OperationContext* const opCtx,
- const IndexCatalog* const cat,
- const bool includeUnfinishedIndexes) {
- return stdx::make_unique<IndexCatalogImpl::IndexIteratorImpl>(
- opCtx, cat, includeUnfinishedIndexes);
- });
- return Status::OK();
+MONGO_REGISTER_SHIM(IndexCatalog::IndexIterator::makeImpl)
+(OperationContext* const opCtx,
+ const IndexCatalog* const cat,
+ const bool includeUnfinishedIndexes,
+ PrivateTo<IndexCatalog::IndexIterator>)
+ ->std::unique_ptr<IndexCatalog::IndexIterator::Impl> {
+ return std::make_unique<IndexCatalogImpl::IndexIteratorImpl>(
+ opCtx, cat, includeUnfinishedIndexes);
}
-
-MONGO_INITIALIZER(InitializeFixIndexKeyImpl)(InitializerContext* const) {
- IndexCatalog::registerFixIndexKeyImpl(&IndexCatalogImpl::fixIndexKey);
- return Status::OK();
+MONGO_REGISTER_SHIM(IndexCatalog::fixIndexKey)(const BSONObj& key)->BSONObj {
+ return IndexCatalogImpl::fixIndexKey(key);
}
-MONGO_INITIALIZER(InitializePrepareInsertDeleteOptionsImpl)(InitializerContext* const) {
- IndexCatalog::registerPrepareInsertDeleteOptionsImpl(
- &IndexCatalogImpl::prepareInsertDeleteOptions);
- return Status::OK();
+MONGO_REGISTER_SHIM(IndexCatalog::prepareInsertDeleteOptions)
+(OperationContext* opCtx, const IndexDescriptor* desc, InsertDeleteOptions* options)->void {
+ return IndexCatalogImpl::prepareInsertDeleteOptions(opCtx, desc, options);
}
-} // namespace
-
using std::unique_ptr;
using std::endl;
using std::string;