servatrice/common/serverinfo_user_container.cpp
ctrlaltca b29bd9e070
Clang-format (#3028)
* 1/3 Add .clang-format file and travis compilation check

* 2/3 Run clang-format

* 3/3 Fix compilation problems due to include reordering

* 3bis/3 AfterControlStatement: false
2018-01-27 10:41:32 +01:00

57 lines
1.6 KiB
C++

#include "serverinfo_user_container.h"
#include "pb/serverinfo_user.pb.h"
ServerInfo_User_Container::ServerInfo_User_Container(ServerInfo_User *_userInfo) : userInfo(_userInfo)
{
}
ServerInfo_User_Container::ServerInfo_User_Container(const ServerInfo_User &_userInfo)
: userInfo(new ServerInfo_User(_userInfo))
{
}
ServerInfo_User_Container::ServerInfo_User_Container(const ServerInfo_User_Container &other)
{
if (other.userInfo)
userInfo = new ServerInfo_User(*other.userInfo);
else
userInfo = 0;
}
ServerInfo_User_Container::~ServerInfo_User_Container()
{
delete userInfo;
}
void ServerInfo_User_Container::setUserInfo(const ServerInfo_User &_userInfo)
{
userInfo = new ServerInfo_User(_userInfo);
}
ServerInfo_User &ServerInfo_User_Container::copyUserInfo(ServerInfo_User &result,
bool complete,
bool internalInfo,
bool sessionInfo) const
{
if (userInfo) {
result.CopyFrom(*userInfo);
if (!sessionInfo) {
result.clear_session_id();
result.clear_address();
result.clear_clientid();
}
if (!internalInfo) {
result.clear_id();
result.clear_email();
}
if (!complete)
result.clear_avatar_bmp();
}
return result;
}
ServerInfo_User ServerInfo_User_Container::copyUserInfo(bool complete, bool internalInfo, bool sessionInfo) const
{
ServerInfo_User result;
return copyUserInfo(result, complete, internalInfo, sessionInfo);
}