diff options
author | Henrik Edin <henrik.edin@mongodb.com> | 2018-09-24 14:10:22 -0400 |
---|---|---|
committer | Henrik Edin <henrik.edin@mongodb.com> | 2018-10-03 14:46:14 -0400 |
commit | 58501015eff7961dc378abe1d49e064a3dcf3dbc (patch) | |
tree | e0b41dd135ec7657605ca87e99b9ef2d3fa3baed /src/mongo/db/pipeline/mongo_process_interface.h | |
parent | 860b392d9d3c006090a4c7fc3c6f3fa5460e5c5c (diff) | |
download | mongo-58501015eff7961dc378abe1d49e064a3dcf3dbc.tar.gz |
SERVER-37295 Remove embedded dependency on process interface shard server.
Refactor process interface system to use shim to allow for separate factories for embedded and mongod.
Diffstat (limited to 'src/mongo/db/pipeline/mongo_process_interface.h')
-rw-r--r-- | src/mongo/db/pipeline/mongo_process_interface.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mongo/db/pipeline/mongo_process_interface.h b/src/mongo/db/pipeline/mongo_process_interface.h index 974fd2807d4..664c956c33a 100644 --- a/src/mongo/db/pipeline/mongo_process_interface.h +++ b/src/mongo/db/pipeline/mongo_process_interface.h @@ -35,6 +35,7 @@ #include <string> #include <vector> +#include "mongo/base/shim.h" #include "mongo/client/dbclient_base.h" #include "mongo/db/collection_index_usage_tracker.h" #include "mongo/db/generic_cursor.h" @@ -68,6 +69,13 @@ public: enum class CurrentOpSessionsMode { kIncludeIdle, kExcludeIdle }; enum class CurrentOpCursorMode { kIncludeCursors, kExcludeCursors }; + /** + * Factory function to create MongoProcessInterface of the right type. The implementation will + * be installed by a lib higher up in the link graph depending on the application type. + */ + static MONGO_DECLARE_SHIM( + (OperationContext * opCtx)->std::shared_ptr<MongoProcessInterface>) create; + struct MakePipelineOptions { MakePipelineOptions(){}; |