Move all socket handling into RemotePeer
[quassel.git] / src / common / protocols / datastream / datastreampeer.h
index 687f2ee..7d04f4b 100644 (file)
@@ -21,8 +21,6 @@
 #ifndef DATASTREAMPEER_H
 #define DATASTREAMPEER_H
 
-#include <QDataStream>
-
 #include "../../remotepeer.h"
 
 class QDataStream;
@@ -44,6 +42,7 @@ public:
     DataStreamPeer(AuthHandler *authHandler, QTcpSocket *socket, quint16 features, QObject *parent = 0);
 
     Protocol::Type protocol() const { return Protocol::DataStreamProtocol; }
+    QString protocolName() const { return "the DataStream protocol"; }
 
     static quint16 supportedFeatures();
     static bool acceptsFeatures(quint16 peerFeatures);
@@ -71,18 +70,15 @@ public:
 signals:
     void protocolError(const QString &errorString);
 
-protected slots:
-    void onSocketDataAvailable();
-
 private:
-    bool readSocketData(QVariant &item);
-    void writeSocketData(const QVariant &item);
-    void handleHandshakeMessage(const QVariant &msg);
-    void handlePackedFunc(const QVariant &packedFunc);
-    void dispatchPackedFunc(const QVariantList &packedFunc);
+    using RemotePeer::writeMessage;
+    void writeMessage(const QVariantMap &handshakeMsg);
+    void writeMessage(const QVariantList &sigProxyMsg);
+    void processMessage(const QByteArray &msg);
 
-    QDataStream _stream;
-    quint32 _blockSize;
+    void handleHandshakeMessage(const QVariantList &mapData);
+    void handlePackedFunc(const QVariantList &packedFunc);
+    void dispatchPackedFunc(const QVariantList &packedFunc);
 };
 
 #endif