From a8ad2278025467f7cc9c9974d7e82be5752fb697 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Sun, 24 May 2009 15:09:24 +0200 Subject: Interface des UserManager ?berarbeitet --- src/Server/RequestHandlers/GroupListRequestHandler.cpp | 14 +++++++++----- src/Server/RequestHandlers/UserInfoRequestHandler.cpp | 13 ++++++++----- src/Server/RequestHandlers/UserListRequestHandler.cpp | 14 ++++++++------ 3 files changed, 25 insertions(+), 16 deletions(-) (limited to 'src/Server/RequestHandlers') diff --git a/src/Server/RequestHandlers/GroupListRequestHandler.cpp b/src/Server/RequestHandlers/GroupListRequestHandler.cpp index 1ca2b92..356e105 100644 --- a/src/Server/RequestHandlers/GroupListRequestHandler.cpp +++ b/src/Server/RequestHandlers/GroupListRequestHandler.cpp @@ -42,11 +42,13 @@ void GroupListRequestHandler::handlePacket(const Common::XmlPacket &packet) { // TODO Require authentication - boost::shared_ptr > info = UserManager::get()->getGroupList(); + Common::XmlPacket ret; - if(info) { + try { + boost::shared_ptr > info = UserManager::get()->getGroupList(); + ret.setType("OK"); ret.addList("groups"); @@ -58,10 +60,12 @@ void GroupListRequestHandler::handlePacket(const Common::XmlPacket &packet) { entry.add("name", group->second.getName()); } } - - else { + catch(Net::Exception e) { ret.setType("Error"); - ret.add("ErrorCode", Net::Exception::NOT_IMPLEMENTED); + ret.add("ErrorCode", e.getErrorCode()); + ret.add("SubCode", e.getSubCode()); + ret.add("SubSubCode", e.getSubSubCode()); + ret.add("Where", e.getWhere()); } sendPacket(ret); diff --git a/src/Server/RequestHandlers/UserInfoRequestHandler.cpp b/src/Server/RequestHandlers/UserInfoRequestHandler.cpp index 287d026..e4ef447 100644 --- a/src/Server/RequestHandlers/UserInfoRequestHandler.cpp +++ b/src/Server/RequestHandlers/UserInfoRequestHandler.cpp @@ -42,11 +42,11 @@ void UserInfoRequestHandler::handlePacket(const Common::XmlPacket &packet) { // TODO Require authentication - boost::shared_ptr info = UserManager::get()->getUserInfo(packet["uid"]); - Common::XmlPacket ret; - if(info) { + try { + boost::shared_ptr info = UserManager::get()->getUserInfo(packet["uid"]); + ret.setType("OK"); ret.add("uid", info->getUid()); @@ -54,9 +54,12 @@ void UserInfoRequestHandler::handlePacket(const Common::XmlPacket &packet) { ret.add("username", info->getUsername()); ret.add("fullName", info->getFullName()); } - else { + catch(Net::Exception e) { ret.setType("Error"); - ret.add("ErrorCode", Net::Exception::NOT_IMPLEMENTED); + ret.add("ErrorCode", e.getErrorCode()); + ret.add("SubCode", e.getSubCode()); + ret.add("SubSubCode", e.getSubSubCode()); + ret.add("Where", e.getWhere()); } sendPacket(ret); diff --git a/src/Server/RequestHandlers/UserListRequestHandler.cpp b/src/Server/RequestHandlers/UserListRequestHandler.cpp index 713753b..37db6d5 100644 --- a/src/Server/RequestHandlers/UserListRequestHandler.cpp +++ b/src/Server/RequestHandlers/UserListRequestHandler.cpp @@ -42,11 +42,11 @@ void UserListRequestHandler::handlePacket(const Common::XmlPacket &packet) { // TODO Require authentication - boost::shared_ptr > info = UserManager::get()->getUserList(); - Common::XmlPacket ret; - if(info) { + try { + boost::shared_ptr > info = UserManager::get()->getUserList(); + ret.setType("OK"); ret.addList("users"); @@ -60,10 +60,12 @@ void UserListRequestHandler::handlePacket(const Common::XmlPacket &packet) { entry.add("fullName", user->second.getFullName()); } } - - else { + catch(Net::Exception e) { ret.setType("Error"); - ret.add("ErrorCode", Net::Exception::NOT_IMPLEMENTED); + ret.add("ErrorCode", e.getErrorCode()); + ret.add("SubCode", e.getSubCode()); + ret.add("SubSubCode", e.getSubSubCode()); + ret.add("Where", e.getWhere()); } sendPacket(ret); -- cgit v1.2.3