aboutsummaryrefslogtreecommitdiff
path: root/src/User.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2018-04-28 15:31:27 +0200
committerdec05eba <dec05eba@protonmail.com>2018-04-28 15:31:33 +0200
commit9d84d5d8e7f61a02c01eef021ea5e8b2f49dcf8f (patch)
treec680f1d77e09d8333299d4098b0093240e138f91 /src/User.cpp
parent3b03f87070d91f63f0dc3c7152723727781dcccf (diff)
Connect channels to database, currently only locally
Diffstat (limited to 'src/User.cpp')
-rw-r--r--src/User.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/User.cpp b/src/User.cpp
index 6b07b5b..2908fd4 100644
--- a/src/User.cpp
+++ b/src/User.cpp
@@ -1,8 +1,31 @@
#include "../include/User.hpp"
+#include <odhtdb/User.hpp>
+#include <cassert>
namespace dchat
{
+ const static std::string SYSTEM_USER_NAME = "System";
+
+ User::User(Type _type) :
+ type(_type)
+ {
+
+ }
+
+ OnlineUser::OnlineUser(const odhtdb::User *_databaseUser) :
+ User(Type::ONLINE),
+ databaseUser(_databaseUser)
+ {
+ assert(databaseUser);
+ }
+
+ const std::string& OnlineUser::getName() const
+ {
+ return databaseUser->getName();
+ }
+
OfflineUser::OfflineUser(const std::string &_name) :
+ User(Type::OFFLINE),
name(_name)
{
@@ -12,4 +35,15 @@ namespace dchat
{
return name;
}
+
+ SystemUser::SystemUser() :
+ User(Type::SYSTEM)
+ {
+
+ }
+
+ const std::string& SystemUser::getName() const
+ {
+ return SYSTEM_USER_NAME;
+ }
}