Пример #1
0
void Server::threadFinished(int threadId)
{
	QString userExited;

	for (int i = 0; i < clientList.size(); i++)
	{
		if (clientList.at(i)->getThreadId() == threadId)
		{
			userExited = clientList.at(i)->getClient()->getName();
			clientList.removeAt(i);
		}
	}

	QLog_Trace("Server", "Thread finished");
}
Пример #2
0
void Server::sendSinglePPCStatus(const QString &ip, const QString &status, const QString &owner, Client *client)
{
	QByteArray block;
	QDataStream out(&block, QIODevice::WriteOnly);
	out.setVersion(QDataStream::Qt_4_1);

	qDebug() << "sendSinglePPCStatus: " << ip << status << owner;
	QStringList sendMsg;
	sendMsg << ip << status << owner;
	QLog_Trace("Server", sendMsg.join(", "));

	out << quint16(0) << UPDATE_CLIENT_PPC_STATUS << ip << status << owner;

	out.device()->seek(0);
	out << quint16(block.size() - sizeof(quint16));
	qDebug() << "getName: " << client->getName();
	client->write(block);
}
Пример #3
0
void ClientThread::run()
{
    client = new Client(socketId);

	connect(client, SIGNAL(readyRead()), this, SLOT(readyRead()), Qt::DirectConnection);
    connect(client, SIGNAL(disconnected()), this, SLOT(disconnected()), Qt::DirectConnection);

    client->write("Welcome to the Server!");

	QLog_Trace("ClientThread", "New client from " + client->peerAddress().toString());

	while (!quit)
	{
		client->waitForReadyRead(1);
		for (int i = msgToWrite.size() - 1; i >= 0; i--)
		{
			client->write(msgToWrite.at(i).toLatin1());
			msgToWrite.removeAt(i);
		}
	}
}
Пример #4
0
void ClientThread::sendMessage(const QString &msg)
{
	QLog_Trace("ClientThread", "ClientThread::sendMessage()");
	msgToWrite.prepend(msg);
}