diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-07-10 02:08:03 +0200 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-07-10 02:08:03 +0200 |
commit | f892ec46086eee9c4bfb954469016829fb201532 (patch) | |
tree | c6abb16ea1b52953a37da995dc988c823685a46a /src/Common/Backends/NetworkUserBackend.cpp | |
parent | 5bf8b6ce656ffe0740ec116057577044e3925887 (diff) | |
download | mad-f892ec46086eee9c4bfb954469016829fb201532.tar mad-f892ec46086eee9c4bfb954469016829fb201532.zip |
updateUser und deleteUser zum UserBackendMysql, NetworkUserBackend und Client hinzugefügt
Diffstat (limited to 'src/Common/Backends/NetworkUserBackend.cpp')
-rw-r--r-- | src/Common/Backends/NetworkUserBackend.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/Common/Backends/NetworkUserBackend.cpp b/src/Common/Backends/NetworkUserBackend.cpp index 7e77253..20deba6 100644 --- a/src/Common/Backends/NetworkUserBackend.cpp +++ b/src/Common/Backends/NetworkUserBackend.cpp @@ -70,6 +70,19 @@ void NetworkUserBackend::UserAddRequest::sendRequest() { sendPacket(packet); } +void NetworkUserBackend::UserUpdateRequest::sendRequest() { + XmlPacket packet; + packet.setType("UpdateUser"); + + packet.set("origUid", uid); + packet.set("uid", userInfo.getUid()); + packet.set("gid", userInfo.getGid()); + packet.set("username", userInfo.getUsername()); + packet.set("fullName", userInfo.getFullName()); + + sendPacket(packet); +} + boost::shared_ptr<const std::map<unsigned long, UserInfo> > NetworkUserBackend::getUserList(boost::posix_time::ptime *timestamp) throw(Core::Exception) { boost::shared_ptr<SimpleUserRequest> request(new SimpleUserRequest(application, "ListUsers", timestamp)); application->getRequestManager()->sendRequest(connection, request); @@ -349,6 +362,26 @@ void NetworkUserBackend::addUser(const UserInfo &userInfo) throw(Core::Exception throw result.second; } +void NetworkUserBackend::updateUser(unsigned long uid, const Common::UserInfo &userInfo) throw(Core::Exception) { + boost::shared_ptr<UserUpdateRequest> request(new UserUpdateRequest(application, uid, userInfo)); + application->getRequestManager()->sendRequest(connection, request); + request->wait(); + + std::pair<boost::shared_ptr<const XmlPacket>, Core::Exception> result = request->getResult(); + if(!result.first || result.second) + throw result.second; +} + +void NetworkUserBackend::deleteUser(unsigned long uid) throw(Core::Exception) { + boost::shared_ptr<IdUserRequest> request(new IdUserRequest(application, "DeleteUser", "uid", uid)); + application->getRequestManager()->sendRequest(connection, request); + request->wait(); + + std::pair<boost::shared_ptr<const XmlPacket>, Core::Exception> result = request->getResult(); + if(!result.first || result.second) + throw result.second; +} + } } } |