summaryrefslogtreecommitdiffstats
path: root/src/modules/UserListManager/UserListManager.cpp
diff options
context:
space:
mode:
authorMatthias Schiffer <matthias@gamezock.de>2009-09-23 09:44:02 +0200
committerMatthias Schiffer <matthias@gamezock.de>2009-09-23 09:44:02 +0200
commit0eddc28a331437ef95a60418ed1fc6de4e9b63c1 (patch)
tree17dcb71adbca54b47e12b32fb313597f971709f5 /src/modules/UserListManager/UserListManager.cpp
parentd6844595c9b47dab1db4b970ff6cc7fb3f64f107 (diff)
downloadmad-0eddc28a331437ef95a60418ed1fc6de4e9b63c1.tar
mad-0eddc28a331437ef95a60418ed1fc6de4e9b63c1.zip
UserListManager: Moved module into libCommon and libServer
Diffstat (limited to 'src/modules/UserListManager/UserListManager.cpp')
-rw-r--r--src/modules/UserListManager/UserListManager.cpp153
1 files changed, 0 insertions, 153 deletions
diff --git a/src/modules/UserListManager/UserListManager.cpp b/src/modules/UserListManager/UserListManager.cpp
deleted file mode 100644
index deb6214..0000000
--- a/src/modules/UserListManager/UserListManager.cpp
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * UserListManager.cpp
- *
- * Copyright (C) 2009 Matthias Schiffer <matthias@gamezock.de>
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published by the
- * Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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 Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "UserListManager.h"
-#include "UserList.h"
-#include "Util.h"
-#include "RequestHandlers/UserListRequestHandlerGroup.h"
-#include "RequestHandlers/UserListUploadRequestHandler.h"
-#include "RequestHandlers/UserListDiffUploadRequestHandler.h"
-
-#include <Server/Application.h>
-#include <Common/RequestManager.h>
-#include <Common/StorageManager.h>
-#include <Common/UserManager.h>
-#include <Core/ConfigManager.h>
-
-namespace Mad {
-namespace Modules {
-namespace UserListManager {
-
-UserListManager::UserListManager(Server::Application *application0) : application(application0), requestHandlerGroup(new RequestHandlers::UserListRequestHandlerGroup(application, this)) {
- application->getConfigManager()->registerConfigurable(this);
-}
-
-UserListManager::~UserListManager() {
- application->getRequestManager()->unregisterPacketType("UploadUserList");
- application->getRequestManager()->unregisterPacketType("UploadUserListDiff");
- application->getRequestManager()->unregisterRequestHandlerGroup(requestHandlerGroup);
- application->getConfigManager()->unregisterConfigurable(this);
-}
-
-
-void UserListManager::configFinished() {
- userLists = application->getStorageManager()->list("UserList");
- userListDiffs = application->getStorageManager()->list("UserListDiff");
-
- application->getRequestManager()->registerRequestHandlerGroup(requestHandlerGroup);
- application->getRequestManager()->registerPacketType<RequestHandlers::UserListUploadRequestHandler>("UploadUserList", this);
- application->getRequestManager()->registerPacketType<RequestHandlers::UserListDiffUploadRequestHandler>("UploadUserListDiff", this);
-}
-
-bool UserListManager::existsUserList(const std::string &name) {
- return application->getStorageManager()->exists("UserList", name);
-}
-
-boost::shared_ptr<UserList> UserListManager::loadUserList(const std::string &name) {
- boost::shared_ptr<Common::XmlData> data = application->getStorageManager()->load("UserList", name);
-
- if(!data)
- return boost::shared_ptr<UserList>();
-
- return Util::deserializeUserList(data.get());
-}
-
-void UserListManager::storeUserList(const std::string &name, const UserList *list) {
- Common::XmlData data;
-
- Util::serializeUserList(list, &data);
- application->getStorageManager()->store("UserList", name, &data);
-}
-
-void UserListManager::copyUserList(const std::string &fromName, const std::string &toName) {
- application->getStorageManager()->copy("UserList", fromName, toName);
-}
-
-void UserListManager::renameUserList(const std::string &fromName, const std::string &toName) {
- application->getStorageManager()->rename("UserList", fromName, toName);
-}
-
-void UserListManager::removeUserList(const std::string &name) {
- application->getStorageManager()->remove("UserList", name);
-}
-
-
-bool UserListManager::existsUserListDiff(const std::string &name) {
- return application->getStorageManager()->exists("UserListDiff", name);
-}
-
-boost::shared_ptr<UserListDiff> UserListManager::loadUserListDiff(const std::string &name) {
- boost::shared_ptr<Common::XmlData> data = application->getStorageManager()->load("UserListDiff", name);
-
- if(!data)
- return boost::shared_ptr<UserListDiff>();
-
- return Util::deserializeUserListDiff(data.get());
-}
-
-void UserListManager::storeUserListDiff(const std::string &name, const UserListDiff *list) {
- Common::XmlData data;
-
- Util::serializeUserListDiff(list, &data);
- application->getStorageManager()->store("UserListDiff", name, &data);
-}
-
-void UserListManager::copyUserListDiff(const std::string &fromName, const std::string &toName) {
- application->getStorageManager()->copy("UserListDiff", fromName, toName);
-}
-
-void UserListManager::renameUserListDiff(const std::string &fromName, const std::string &toName) {
- application->getStorageManager()->rename("UserListDiff", fromName, toName);
-}
-
-void UserListManager::removeUserListDiff(const std::string &name) {
- application->getStorageManager()->remove("UserListDiff", name);
-}
-
-boost::shared_ptr<UserList> UserListManager::getCurrentUserList() {
- boost::shared_ptr<UserList> list(new UserList);
-
- boost::shared_ptr<const std::map<unsigned long, Common::UserInfo> > userList = application->getUserManager()->getUserList();
- boost::shared_ptr<const std::map<unsigned long, Common::GroupInfo> > groupList = application->getUserManager()->getGroupList();
-
- for(std::map<unsigned long, Common::UserInfo>::const_iterator user = userList->begin(); user != userList->end(); ++user) {
- std::map<unsigned long, Common::GroupInfo>::const_iterator group = groupList->find(user->second.getGid());
- std::string groupname;
-
- if(group != groupList->end()) {
- groupname = group->second.getName();
- }
- else {
- std::ostringstream stream;
- stream << user->second.getGid();
- groupname = stream.str();
- }
-
- UserListEntry entry(user->second.getUsername(), groupname);
- entry.setDetail("Full name", user->second.getFullName());
-
- list->push_back(entry);
- }
-
- return list;
-}
-
-}
-}
-}