Files
Cockatrice/servatrice/src/returnmessage.cpp
Max-Wilhelm Bruker 792a400a3d minor improvements
2009-04-08 21:49:16 +02:00

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;
}