Exemplo n.º 1
0
void ServerCatchcopy::disconnected()
{
    QLocalSocket *socket=qobject_cast<QLocalSocket *>(QObject::sender());
    if(socket==NULL)
    {
        qWarning() << "Unlocated client socket!";
        return;
    }
    int index=0;
    while(index<clientList.size())
    {
        if(clientList.at(index).socket==socket)
        {
            const uint32_t &id=clientList.at(index).id;
            //ClientList.at(index).socket->disconnectFromServer();//already disconnected
            delete clientList.at(index).detectTimeOut;
            clientList.at(index).socket->deleteLater();
            clientList.removeAt(index);
            emit disconnectedClient(id);
            return;
        }
        index++;
    }
    qWarning() << "Unlocated client!";
}
Exemplo n.º 2
0
void ServerCatchcopy::disconnected()
{
	QLocalSocket *socket=qobject_cast<QLocalSocket *>(QObject::sender());
	if(socket==NULL)
	{
		qWarning() << "Unlocated client socket!";
		return;
	}
	int index=0;
	while(index<ClientList.size())
	{
		if(ClientList.at(index).socket==socket)
		{
			emit disconnectedClient(ClientList.at(index).id);
			disconnect(ClientList.at(index).socket);
			disconnect(ClientList.at(index).detectTimeOut);
			delete ClientList.at(index).detectTimeOut;
			ClientList.at(index).socket->abort();
			ClientList.at(index).socket->disconnectFromServer();
			ClientList.at(index).socket->deleteLater();
			ClientList.removeAt(index);
			return;
		}
		index++;
	}
	qWarning() << "Unlocated client!";
}
Exemplo n.º 3
0
void Network::newClient()
{
    QTcpSocket *newClient = server->nextPendingConnection();

    newClient->write(Utils::convertQString(AreaString::connectedMessage));
    Utils::printConsole(AreaString::clientInfoMessage.arg(QDateTime::currentDateTime().toString(AreaString::dateTimeFormat), newClient->peerAddress().toString()));
    connect(newClient, SIGNAL(readyRead()), this, SLOT(readData()));
    connect(newClient, SIGNAL(disconnected()), this, SLOT(disconnectedClient()));
    clients << newClient;
}