more ServerNetwork code

This commit is contained in:
Max-Wilhelm Bruker 2012-03-04 19:23:43 +01:00
parent 6bbc76af2b
commit c9b66e4239
21 changed files with 441 additions and 35 deletions

View file

@ -0,0 +1,35 @@
#ifndef NETWORKSERVERINTERFACE_H
#define NETWORKSERVERINTERFACE_H
#include "servatrice.h"
class Servatrice;
class QSslSocket;
class ServerNetworkMessage;
class NetworkServerInterface : public QObject {
Q_OBJECT
private slots:
void readClient();
void catchSocketError(QAbstractSocket::SocketError socketError);
void flushOutputBuffer();
signals:
void outputBufferChanged();
private:
QMutex outputBufferMutex;
Servatrice *server;
QSslSocket *socket;
QByteArray inputBuffer, outputBuffer;
bool messageInProgress;
int messageLength;
void processMessage(const ServerNetworkMessage &item);
public:
NetworkServerInterface(Servatrice *_server, QSslSocket *_socket);
~NetworkServerInterface();
void transmitMessage(const ServerNetworkMessage &item);
};
#endif