Changed the structure of the class Handler (in particular, rewrite the structure of createSession)

This commit is contained in:
Denis Davydov 2018-07-06 15:38:45 +03:00
parent f694a32f3e
commit 3e4778b576
2 changed files with 12 additions and 13 deletions

View File

@ -5,7 +5,8 @@ Handler::Handler()
using namespace std::placeholders; using namespace std::placeholders;
handlers = { handlers = {
{"createSession", std::bind(&Handler::createSession, this, _1)} {"createSession", std::bind(&Handler::createSession, this, _1)},
{"createSessionSuccess", std::bind(&Handler::createSessionSuccessMethod, this, _1)}
}; };
network = new Network(); network = new Network();
connect(network, &Network::json_received, this, &Handler::handle); connect(network, &Network::json_received, this, &Handler::handle);
@ -21,16 +22,13 @@ void Handler::handle(QJsonObject jsonReceived)
void Handler::createSession(QJsonObject jsonReceived) void Handler::createSession(QJsonObject jsonReceived)
{ {
QJsonObject jsonSend; QJsonObject jsonSend;
if(jsonReceived.contains("status") != true)
{
jsonSend["peerID"] = my_ipv6; jsonSend["peerID"] = my_ipv6;
jsonSend["action"] = "createSession"; jsonSend["action"] = "createSessionSuccess";
jsonSend["status"] = true;
QString peerReceiver = jsonReceived["peerID"].toString(); QString peerReceiver = jsonReceived["peerID"].toString();
network->sendDatagram(jsonSend, peerReceiver); network->sendDatagram(jsonSend, peerReceiver);
} }
else
{ void Handler::createSessionSuccessMethod(QJsonObject jsonReceived)
emit createSessionSuccess(); {
} emit createSessionSuccess();
} }

View File

@ -17,6 +17,7 @@ class Handler : public QObject
Network *network; Network *network;
void createSession(QJsonObject jsonReceived); void createSession(QJsonObject jsonReceived);
std::map<QString, std::function<void(QJsonObject)>> handlers; std::map<QString, std::function<void(QJsonObject)>> handlers;
void createSessionSuccessMethod(QJsonObject jsonReceived);
private slots: private slots:
void handle(QJsonObject jsonReceived); void handle(QJsonObject jsonReceived);
}; };