Replaced QTcpSocket * with a QIODevice * to make network independent unit tests possible.
[contrib/qtwebsockets.git] / src / qwebsocket.h
index 2443e01..e1791af 100644 (file)
@@ -37,79 +37,78 @@ class QWebSocketPrivate;
 
 class Q_WEBSOCKETS_EXPORT QWebSocket:public QObject
 {
-       Q_OBJECT
+    Q_OBJECT
 
 public:
-       explicit QWebSocket(QString origin = QString(), QWebSocketProtocol::Version version = QWebSocketProtocol::V_LATEST, QObject *parent = 0);
-       virtual ~QWebSocket();
-
-       void abort();
-       QAbstractSocket::SocketError error() const;
-       QString errorString() const;
-       bool flush();
-       bool isValid();
-       QHostAddress localAddress() const;
-       quint16 localPort() const;
-       QAbstractSocket::PauseModes pauseMode() const;
-       QHostAddress peerAddress() const;
-       QString peerName() const;
-       quint16 peerPort() const;
+    explicit QWebSocket(const QString &origin = QString(), QWebSocketProtocol::Version version = QWebSocketProtocol::V_LATEST, QObject *parent = 0);
+    virtual ~QWebSocket();
+
+    void abort();
+    QAbstractSocket::SocketError error() const;
+    QString errorString() const;
+    bool flush();
+    bool isValid() const;
+    QHostAddress localAddress() const;
+    quint16 localPort() const;
+    QAbstractSocket::PauseModes pauseMode() const;
+    QHostAddress peerAddress() const;
+    QString peerName() const;
+    quint16 peerPort() const;
 #ifndef QT_NO_NETWORKPROXY
-       QNetworkProxy proxy() const;
-       void setProxy(const QNetworkProxy &networkProxy);
+    QNetworkProxy proxy() const;
+    void setProxy(const QNetworkProxy &networkProxy);
 #endif
-       qint64 readBufferSize() const;
-       void setReadBufferSize(qint64 size);
+    qint64 readBufferSize() const;
+    void setReadBufferSize(qint64 size);
 
-       void resume();
-       void setPauseMode(QAbstractSocket::PauseModes pauseMode);
+    void resume();
+    void setPauseMode(QAbstractSocket::PauseModes pauseMode);
 
-       void setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value);
-       QVariant socketOption(QAbstractSocket::SocketOption option);
-       QAbstractSocket::SocketState state() const;
+    void setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value);
+    QVariant socketOption(QAbstractSocket::SocketOption option);
+    QAbstractSocket::SocketState state() const;
 
-       bool waitForConnected(int msecs = 30000);
-       bool waitForDisconnected(int msecs = 30000);
+    bool waitForConnected(int msecs = 30000);
+    bool waitForDisconnected(int msecs = 30000);
 
-       QWebSocketProtocol::Version version();
-       QString resourceName();
-       QUrl requestUrl();
-       QString origin();
-       QString protocol();
-       QString extension();
+    QWebSocketProtocol::Version version() const;
+    QString resourceName() const;
+    QUrl requestUrl() const;
+    QString origin() const;
+    QString protocol() const;
+    QString extension() const;
 
-       qint64 write(const char *message);              //send data as text
-       qint64 write(const char *message, qint64 maxSize);              //send data as text
-       qint64 write(const QString &message);   //send data as text
-       qint64 write(const QByteArray &data);   //send data as binary
+    qint64 write(const char *message);         //send data as text
+    qint64 write(const char *message, qint64 maxSize);         //send data as text
+    qint64 write(const QString &message);      //send data as text
+    qint64 write(const QByteArray &data);      //send data as binary
 
 public Q_SLOTS:
-       virtual void close(QWebSocketProtocol::CloseCode closeCode = QWebSocketProtocol::CC_NORMAL, QString reason = QString());
-       virtual void open(const QUrl &url, bool mask = true);
-       void ping();
+    void close(QWebSocketProtocol::CloseCode closeCode = QWebSocketProtocol::CC_NORMAL, const QString &reason = QString());
+    void open(const QUrl &url, bool mask = true);
+    void ping();
 
 Q_SIGNALS:
-       void aboutToClose();
-       void connected();
-       void disconnected();
-       void stateChanged(QAbstractSocket::SocketState state);
+    void aboutToClose();
+    void connected();
+    void disconnected();
+    void stateChanged(QAbstractSocket::SocketState state);
 #ifndef QT_NO_NETWORKPROXY
-       void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *pAuthenticator);
+    void proxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *pAuthenticator);
 #endif
-       void readChannelFinished();
-       void textFrameReceived(QString frame, bool isLastFrame);
-       void binaryFrameReceived(QByteArray frame, bool isLastFrame);
-       void textMessageReceived(QString message);
-       void binaryMessageReceived(QByteArray message);
-       void error(QAbstractSocket::SocketError error);
-       void pong(quint64 elapsedTime);
+    void readChannelFinished();
+    void textFrameReceived(QString frame, bool isLastFrame);
+    void binaryFrameReceived(QByteArray frame, bool isLastFrame);
+    void textMessageReceived(QString message);
+    void binaryMessageReceived(QByteArray message);
+    void error(QAbstractSocket::SocketError error);
+    void pong(quint64 elapsedTime);
 
 private:
-       Q_DISABLE_COPY(QWebSocket)
-       QWebSocket(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version, QObject *parent = 0);
-       QWebSocketPrivate * const d_ptr;
-
-       friend class QWebSocketPrivate;
+    Q_DISABLE_COPY(QWebSocket)
+    Q_DECLARE_PRIVATE(QWebSocket)
+    QWebSocket(QTcpSocket *pTcpSocket, QWebSocketProtocol::Version version, QObject *parent = 0);
+    QWebSocketPrivate * const d_ptr;
 };
 
 QT_END_NAMESPACE