mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-01-11 20:55:38 -08:00
45 lines
1.2 KiB
C++
45 lines
1.2 KiB
C++
#include "returnmessage.h"
|
|
#include "serversocket.h"
|
|
|
|
void ReturnMessage::setMsgId(unsigned int _msg_id)
|
|
{
|
|
msg_id = _msg_id;
|
|
}
|
|
|
|
bool ReturnMessage::send(ReturnCode code)
|
|
{
|
|
ServerSocket *s = qobject_cast<ServerSocket *>(parent());
|
|
if (!s)
|
|
return false;
|
|
bool success = (code == ReturnOk);
|
|
QString returnCodeString;
|
|
switch (code) {
|
|
case ReturnNothing: return true;
|
|
case ReturnOk: break;
|
|
case ReturnLoginNeeded: returnCodeString = "login_needed"; break;
|
|
case ReturnSyntaxError: returnCodeString = "syntax"; break;
|
|
case ReturnContextError: returnCodeString = "context"; break;
|
|
case ReturnPasswordWrong: returnCodeString = "password"; break;
|
|
case ReturnNameNotFound: returnCodeString = "name_not_found"; break;
|
|
}
|
|
s->msg(QString("resp|%1|%2|%3").arg(msg_id)
|
|
.arg(success ? "ok" : "err")
|
|
.arg(returnCodeString));
|
|
return success;
|
|
}
|
|
|
|
bool ReturnMessage::sendList(const QStringList &args)
|
|
{
|
|
ServerSocket *s = qobject_cast<ServerSocket *>(parent());
|
|
if (!s)
|
|
return false;
|
|
|
|
for (int i = 0; i < args.size(); i++)
|
|
s->msg(QString("%1|%2|%3").arg(cmd)
|
|
.arg(msg_id)
|
|
.arg(args[i]));
|
|
s->msg(QString("%1|%2|.").arg(cmd).arg(msg_id));
|
|
|
|
return true;
|
|
}
|