From bf4c6ec2b7694f1a844eef5989b77e83a8cab362 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sat, 11 Jul 2009 01:11:21 +0200 Subject: Befehle add_user_to_group und delete_user_from_group implementiert --- src/Common/Backends/NetworkUserBackend.cpp | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'src/Common/Backends/NetworkUserBackend.cpp') diff --git a/src/Common/Backends/NetworkUserBackend.cpp b/src/Common/Backends/NetworkUserBackend.cpp index 1e06a78..6296581 100644 --- a/src/Common/Backends/NetworkUserBackend.cpp +++ b/src/Common/Backends/NetworkUserBackend.cpp @@ -83,6 +83,15 @@ void NetworkUserBackend::UserUpdateRequest::sendRequest() { sendPacket(packet); } +void NetworkUserBackend::UserGroupRequest::sendRequest() { + XmlPacket packet; + packet.setType(type); + packet.set("uid", uid); + packet.set("gid", gid); + + sendPacket(packet); +} + boost::shared_ptr > NetworkUserBackend::getUserList(boost::posix_time::ptime *timestamp) throw(Core::Exception) { application->getThreadManager()->detach(); @@ -406,6 +415,30 @@ void NetworkUserBackend::deleteUser(unsigned long uid) throw(Core::Exception) { throw result.second; } +void NetworkUserBackend::addUserToGroup(unsigned long uid, unsigned long gid) throw(Core::Exception) { + application->getThreadManager()->detach(); + + boost::shared_ptr request(new UserGroupRequest(application, "AddUserToGroup", uid, gid)); + application->getRequestManager()->sendRequest(connection, request); + request->wait(); + + std::pair, Core::Exception> result = request->getResult(); + if(!result.first || result.second) + throw result.second; +} + +void NetworkUserBackend::deleteUserFromGroup(unsigned long uid, unsigned long gid) throw(Core::Exception) { + application->getThreadManager()->detach(); + + boost::shared_ptr request(new UserGroupRequest(application, "DeleteUserFromGroup", uid, gid)); + application->getRequestManager()->sendRequest(connection, request); + request->wait(); + + std::pair, Core::Exception> result = request->getResult(); + if(!result.first || result.second) + throw result.second; +} + } } } -- cgit v1.2.3