Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///@brief Сериализатор Unordered_Map
- template <typename T1, typename T2>
- std::string SerializeUmap(std::unordered_map<T1, T2> object)
- {
- ..................
- }
- ///@brief Десериализатор Unordered_Map
- template <typename T1, typename T2>
- std::unordered_map<T1, T2> DeserializeUmap(std::string serialized)
- {
- ............................
- }
- ///////////////////////////////////////////////////
- Интерфейс для создания обьектов для посыла на сервер
- service.h
- namespace ServiceChatroomServer
- {
- namespace UserInterface
- {
- ///@brief Сериализованный объект для отключения
- std::string US_ChrMakeObjDisconnect(std::string token);
- ///@brief Сериализованный объект для послания сообщения
- std::string US_ChrMakeSendMessage(std::string token, std::string message);
- }
- }
- namespace ServiceChatroomServer
- {
- namespace UserInterface
- {
- ///@brief Сериализованный объект для подключения
- std::string US_SrvMakeObjConnect(std::string name, std::string roomname);
- ///@brief Сериализованный объект для получения списка пользователей
- std::string US_SrvMakeObjGetUsers(std::string name);
- ///@brief Сериализованный объект для логина на сервере
- std::string US_SrvMakeObjLogin(std::string name);
- ///@brief Сериализованный объект для получения
- std::string US_SrvMakeObjCreateUser(std::string name);
- ///@brief Сериализованный объект для получения
- std::string US_SrvMakeObjCreateRoom(std::string name);
- ///@brief Сериализованный объект для получения
- std::string US_SrvMakeObjRoomList(std::string name);
- }
- }
- Формат ответа сервера
- //ОТВЕТ СЕРВЕРА НА ОШИБКУ
- std::string MakeAnswerError(std::string reason, string initiator)
- {
- unordered_map<string, string> res{
- {CONSTANTS::LF_RESULT, CONSTANTS::RF_ERROR},
- {CONSTANTS::LF_REASON, std::move(reason)},
- {CONSTANTS::LF_INITIATOR, std::move(initiator)}};
- return Service::SerializeUmap(res);
- };
- // ОТВЕТ СЕРВЕРА НА УСПЕШНОЕ ПОЛУЧЕНИЕ ПОЛЬЗОВАТЕЛЕЙ
- std::string Srv_MakeSuccessGetUsers(std::string userlist)
- {
- std::unordered_map<std::string, std::string> res = GetSuccess();
- res[CONSTANTS::LF_ACTION] = CONSTANTS::ACT_GET_USERS;
- res[CONSTANTS::LF_USERS] = userlist;
- return Service::SerializeUmap<std::string, std::string>(res);
- };
- // ОТВЕТ СЕРВЕРА НА УСПЕШНОЕ ДОБАВЛЕНИЕ ПОЛЬЗОВАТЕЛЯ
- std::string Srv_MakeSuccessAddUser(std::string token, std::string roomname)
- {
- std::unordered_map<std::string, std::string> res = GetSuccess();
- res[CONSTANTS::LF_ACTION] = CONSTANTS::ACT_CONNECT;
- res[CONSTANTS::LF_TOKEN] = std::move(token);
- res[CONSTANTS::LF_ROOMNAME] = std::move(roomname);
- return Service::SerializeUmap<std::string, std::string>(res);
- };
- service.cpp
- ...........................
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement