summaryrefslogtreecommitdiffstats
path: root/src/Common/Backends/NetworkUserBackend.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Common/Backends/NetworkUserBackend.h')
-rw-r--r--src/Common/Backends/NetworkUserBackend.h44
1 files changed, 26 insertions, 18 deletions
diff --git a/src/Common/Backends/NetworkUserBackend.h b/src/Common/Backends/NetworkUserBackend.h
index 66be909..8faa8e3 100644
--- a/src/Common/Backends/NetworkUserBackend.h
+++ b/src/Common/Backends/NetworkUserBackend.h
@@ -21,7 +21,7 @@
#define MAD_COMMON_BACKENDS_NETWORKUSERBACKEND_H_
#include "../UserBackend.h"
-#include "../Requests/SimpleRequest.h"
+#include "../Request.h"
namespace Mad {
namespace Common {
@@ -29,9 +29,17 @@ namespace Backends {
class NetworkUserBackend : public UserBackend {
private:
- class SimpleUserRequest : public Requests::SimpleRequest {
+ class SimpleUserRequest : public Request {
+ private:
+ std::string type;
+ boost::posix_time::ptime timestamp;
+
+ protected:
+ virtual void sendRequest();
+
public:
- SimpleUserRequest(Application *application, const std::string &type) : SimpleRequest(application, type) {}
+ SimpleUserRequest(Application *application, const std::string &type0, boost::posix_time::ptime *timestamp0)
+ : Request(application), type(type0), timestamp(timestamp0 ? *timestamp0 : boost::posix_time::not_a_date_time) {}
};
class IdUserRequest : public Request {
@@ -39,45 +47,45 @@ class NetworkUserBackend : public UserBackend {
std::string type;
std::string idType;
unsigned long id;
-
+ boost::posix_time::ptime timestamp;
protected:
virtual void sendRequest();
public:
- IdUserRequest(Application *application, const std::string &type0, const std::string &idType0, unsigned long id0)
- : Request(application), type(type0), idType(idType0), id(id0) {}
+ IdUserRequest(Application *application, const std::string &type0, const std::string &idType0, unsigned long id0, boost::posix_time::ptime *timestamp0)
+ : Request(application), type(type0), idType(idType0), id(id0), timestamp(timestamp0 ? *timestamp0 : boost::posix_time::not_a_date_time) {}
};
class NameUserRequest : public Request {
private:
std::string type;
std::string name;
-
+ boost::posix_time::ptime timestamp;
protected:
virtual void sendRequest();
public:
- NameUserRequest(Application *application, const std::string &type0, const std::string &name0)
- : Request(application), type(type0), name(name0) {}
+ NameUserRequest(Application *application, const std::string &type0, const std::string &name0, boost::posix_time::ptime *timestamp0)
+ : Request(application), type(type0), name(name0), timestamp(timestamp0 ? *timestamp0 : boost::posix_time::not_a_date_time) {}
};
Application *application;
Connection *connection;
protected:
- virtual boost::shared_ptr<const std::map<unsigned long, UserInfo> > getUserList() throw(Core::Exception);
- virtual boost::shared_ptr<const UserInfo> getUserInfo(unsigned long uid) throw(Core::Exception);
- virtual boost::shared_ptr<const UserInfo> getUserInfoByName(const std::string &name) throw(Core::Exception);
- virtual boost::shared_ptr<const std::set<unsigned long> > getUserGroupList(unsigned long uid) throw(Core::Exception);
+ virtual boost::shared_ptr<const std::map<unsigned long, Common::UserInfo> > getUserList(boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const Common::UserInfo> getUserInfo(unsigned long uid, boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const Common::UserInfo> getUserInfoByName(const std::string &name, boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const std::set<unsigned long> > getUserGroupList(unsigned long uid, boost::posix_time::ptime *timestamp) throw(Core::Exception);
- virtual boost::shared_ptr<const std::map<unsigned long, GroupInfo> > getGroupList() throw(Core::Exception);
- virtual boost::shared_ptr<const GroupInfo> getGroupInfo(unsigned long gid) throw(Core::Exception);
- virtual boost::shared_ptr<const GroupInfo> getGroupInfoByName(const std::string &name) throw(Core::Exception);
- virtual boost::shared_ptr<const std::set<unsigned long> > getGroupUserList(unsigned long gid) throw(Core::Exception);
+ virtual boost::shared_ptr<const std::map<unsigned long, Common::GroupInfo> > getGroupList(boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const Common::GroupInfo> getGroupInfo(unsigned long gid, boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const Common::GroupInfo> getGroupInfoByName(const std::string &name, boost::posix_time::ptime *timestamp) throw(Core::Exception);
+ virtual boost::shared_ptr<const std::set<unsigned long> > getGroupUserList(unsigned long gid, boost::posix_time::ptime *timestamp) throw(Core::Exception);
- virtual boost::shared_ptr<const std::multimap<unsigned long, unsigned long> > getFullUserGroupList() throw(Core::Exception);
+ virtual boost::shared_ptr<const std::multimap<unsigned long, unsigned long> > getFullUserGroupList(boost::posix_time::ptime *timestamp) throw(Core::Exception);
//virtual void setPassword(unsigned long uid, const std::string &password) throw(Core::Exception);
//virtual void addUser(const UserInfo &userInfo) throw(Core::Exception);