summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp
diff options
context:
space:
mode:
authorBen Caimano <ben.caimano@10gen.com>2018-07-31 18:26:07 -0400
committerBen Caimano <ben.caimano@10gen.com>2018-07-31 18:32:19 -0400
commit6711ab3bbc02ca98da1af2fe115f07e37bb076e4 (patch)
treef1859ba3692a982b0afbd06fcb523c830136c25c /src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp
parent35757e8ef3134fad1a09cb09a69882929d9ebb76 (diff)
downloadmongo-6711ab3bbc02ca98da1af2fe115f07e37bb076e4.tar.gz
Revert "SERVER-35890 refactor User cache into InvalidatingLRUCache and UserHandle"
This reverts commit 78dec3622268ad27bb855eda4c6a4ed345412fd9.
Diffstat (limited to 'src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp')
-rw-r--r--src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp83
1 files changed, 0 insertions, 83 deletions
diff --git a/src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp b/src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp
deleted file mode 100644
index 0c9fd53fefe..00000000000
--- a/src/mongo/db/pipeline/document_source_list_cached_and_active_users.cpp
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Copyright (C) 2018 MongoDB Inc.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License, version 3,
- * as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * As a special exception, the copyright holders give permission to link the
- * code of portions of this program with the OpenSSL library under certain
- * conditions as described in each individual source file and distribute
- * linked combinations including the program with the OpenSSL library. You
- * must comply with the GNU Affero General Public License in all respects
- * for all of the code used other than as permitted herein. If you modify
- * file(s) with this exception, you may extend this exception to your
- * version of the file(s), but you are not obligated to do so. If you do not
- * wish to do so, delete this exception statement from your version. If you
- * delete this exception statement from all source files in the program,
- * then also delete it in the license file.
- */
-
-#include "mongo/platform/basic.h"
-
-#include "mongo/db/pipeline/document_source_list_cached_and_active_users.h"
-
-#include "mongo/db/auth/authorization_session.h"
-#include "mongo/db/auth/user_name.h"
-#include "mongo/db/commands/test_commands_enabled.h"
-#include "mongo/db/logical_session_id_helpers.h"
-
-namespace mongo {
-
-REGISTER_TEST_DOCUMENT_SOURCE(listCachedAndActiveUsers,
- DocumentSourceListCachedAndActiveUsers::LiteParsed::parse,
- DocumentSourceListCachedAndActiveUsers::createFromBson);
-
-const char* DocumentSourceListCachedAndActiveUsers::kStageName = "$listCachedAndActiveUsers";
-
-DocumentSource::GetNextResult DocumentSourceListCachedAndActiveUsers::getNext() {
- pExpCtx->checkForInterrupt();
-
- if (!_users.empty()) {
- const auto info = std::move(_users.back());
- _users.pop_back();
- return Document(BSON("username" << info.userName.getUser() << "db" << info.userName.getDB()
- << "active"
- << info.active));
- }
-
- return GetNextResult::makeEOF();
-}
-
-boost::intrusive_ptr<DocumentSource> DocumentSourceListCachedAndActiveUsers::createFromBson(
- BSONElement spec, const boost::intrusive_ptr<ExpressionContext>& pExpCtx) {
-
- uassert(
- ErrorCodes::InvalidNamespace,
- str::stream() << kStageName
- << " must be run against the database with {aggregate: 1}, not a collection",
- pExpCtx->ns.isCollectionlessAggregateNS());
-
- uassert(ErrorCodes::BadValue,
- str::stream() << kStageName << " must be run as { " << kStageName << ": {}}",
- spec.isABSONObj() && spec.Obj().isEmpty());
-
- return new DocumentSourceListCachedAndActiveUsers(pExpCtx);
-}
-
-DocumentSourceListCachedAndActiveUsers::DocumentSourceListCachedAndActiveUsers(
- const boost::intrusive_ptr<ExpressionContext>& pExpCtx)
- : DocumentSource(pExpCtx), _users() {
- auto authMgr = AuthorizationManager::get(pExpCtx->opCtx->getServiceContext());
- _users = authMgr->getUserCacheInfo();
-}
-
-} // namespace mongo