Replaced write() methods with send() methods to comply with the QAbstractSocket API
authorKurt Pattyn <pattyn.kurt@gmail.com>
Sun, 25 Aug 2013 13:09:02 +0000 (15:09 +0200)
committerKurt Pattyn <pattyn.kurt@gmail.com>
Sun, 25 Aug 2013 13:09:02 +0000 (15:09 +0200)
examples/echoclient/echoclient.cpp
examples/echoserver/echoserver.cpp
src/qwebsocket.cpp
src/qwebsocket.h
src/qwebsocket_p.cpp
src/qwebsocket_p.h
tests/tst_compliance.cpp
tests/tst_websockets.cpp

index 095e3bd..0e6983a 100644 (file)
@@ -16,7 +16,7 @@ void EchoClient::onConnected()
 {
        qDebug() << "Websocket connected";
        connect(&m_webSocket, SIGNAL(textMessageReceived(QString)), this, SLOT(onTextMessageReceived(QString)));
-       m_webSocket.send("Hello, world!");
+       m_webSocket.write("Hello, world!");
 }
 //! [onConnected]
 
index c08aad1..6afac50 100644 (file)
@@ -38,7 +38,7 @@ void EchoServer::processMessage(QString message)
        QWebSocket *pClient = qobject_cast<QWebSocket *>(sender());
        if (pClient != 0)
        {
-               pClient->send(message);
+               pClient->write(message);
        }
 }
 //! [processMessage]
@@ -49,7 +49,7 @@ void EchoServer::processBinaryMessage(QByteArray message)
        QWebSocket *pClient = qobject_cast<QWebSocket *>(sender());
        if (pClient != 0)
        {
-               pClient->send(message);
+               pClient->write(message);
        }
 }
 //! [processBinaryMessage]
index b2e7d22..118bec9 100644 (file)
@@ -232,21 +232,33 @@ bool QWebSocket::flush()
  * Sends the given \a message over the socket as a text message and returns the number of bytes actually sent.
  * \param message Text message to be sent. Must be '\0' terminated.
  * \return The number of bytes actually sent.
- * \sa send(const QString &message)
+ * \sa write(const QString &message) and write(const char *message, qint64 maxSize)
  */
-qint64 QWebSocket::send(const char *message)
+qint64 QWebSocket::write(const char *message)
 {
-       return d_ptr->send(message);
+       return d_ptr->write(message);
 }
 
-/**
- * @brief Sends the given \a message over the socket as a text message and returns the number of bytes actually sent.
- * @param message The message to be sent
- * @return The number of bytes actually sent.
+/*!
+ * Sends the most \a maxSize bytes of the given \a message over the socket as a text message and returns the number of bytes actually sent.
+ * \param message Text message to be sent.
+ * \return The number of bytes actually sent.
+ * \sa write(const QString &message) and write(const char *message)
+ */
+qint64 QWebSocket::write(const char *message, qint64 maxSize)
+{
+       return d_ptr->write(message, maxSize);
+}
+
+/*!
+       \brief Sends the given \a message over the socket as a text message and returns the number of bytes actually sent.
+       \param message The message to be sent
+       \return The number of bytes actually sent.
+       \sa write(const char *message) and write(const char *message, qint64 maxSize)
  */
-qint64 QWebSocket::send(const QString &message)
+qint64 QWebSocket::write(const QString &message)
 {
-       return d_ptr->send(message);
+       return d_ptr->write(message);
 }
 
 /**
@@ -254,9 +266,9 @@ qint64 QWebSocket::send(const QString &message)
  * @param data The binary data to be sent.
  * @return The number of bytes actually sent.
  */
-qint64 QWebSocket::send(const QByteArray &data)
+qint64 QWebSocket::write(const QByteArray &data)
 {
-       return d_ptr->send(data);
+       return d_ptr->write(data);
 }
 
 /*!
index ed88ba8..c912b3b 100644 (file)
@@ -58,9 +58,10 @@ public:
        QString protocol();
        QString extension();
 
-       qint64 send(const char *message);
-       qint64 send(const QString &message);    //send data as text
-       qint64 send(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());
index 26e12a0..2e0f184 100644 (file)
@@ -127,15 +127,23 @@ bool QWebSocketPrivate::flush()
 /*!
        \internal
  */
-qint64 QWebSocketPrivate::send(const char *message)
+qint64 QWebSocketPrivate::write(const char *message)
 {
-       return send(QString::fromUtf8(message));
+       return write(QString::fromUtf8(message));
 }
 
 /*!
        \internal
  */
-qint64 QWebSocketPrivate::send(const QString &message)
+qint64 QWebSocketPrivate::write(const char *message, qint64 maxSize)
+{
+       return write(QString::fromUtf8(message, static_cast<int>(maxSize)));
+}
+
+/*!
+       \internal
+ */
+qint64 QWebSocketPrivate::write(const QString &message)
 {
        return doWriteData(message.toUtf8(), false);
 }
@@ -143,7 +151,7 @@ qint64 QWebSocketPrivate::send(const QString &message)
 /*!
        \internal
  */
-qint64 QWebSocketPrivate::send(const QByteArray &data)
+qint64 QWebSocketPrivate::write(const QByteArray &data)
 {
        return doWriteData(data, true);
 }
index 3760552..188337b 100644 (file)
@@ -74,9 +74,10 @@ public:
        QString protocol();
        QString extension();
 
-       qint64 send(const char *message);
-       qint64 send(const QString &message);    //send data as text
-       qint64 send(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());
index b450887..d56fc1f 100644 (file)
@@ -64,10 +64,10 @@ void ComplianceTest::runTestCase(int nbr, int total)
        //ws://ipaddress:port/runCase?case=<number>&agent=<agentname>
        //where agent name will be QWebSocket
        QObject::connect(pWebSocket, &QWebSocket::textMessageReceived, [=](QString message) {
-               pWebSocket->send(message);
+               pWebSocket->write(message);
        });
        QObject::connect(pWebSocket, &QWebSocket::binaryMessageReceived, [=](QByteArray message) {
-               pWebSocket->send(message);
+               pWebSocket->write(message);
        });
 
        qDebug() << "Executing test" << (nbr + 1) << "/" << total;
index fe914dc..c404eef 100644 (file)
@@ -89,7 +89,7 @@ void WebSocketsTest::testTextMessage()
 
        QSignalSpy spy(m_pWebSocket, SIGNAL(textMessageReceived(QString)));
 
-       QCOMPARE(m_pWebSocket->send(message), (qint64)strlen(message));
+       QCOMPARE(m_pWebSocket->write(message), (qint64)strlen(message));
 
        QTRY_VERIFY_WITH_TIMEOUT(spy.count() != 0, 1000);
        QCOMPARE(spy.count(), 1);
@@ -98,7 +98,7 @@ void WebSocketsTest::testTextMessage()
 
        spy.clear();
        QString qMessage(message);
-       QCOMPARE(m_pWebSocket->send(qMessage), (qint64)qMessage.length());
+       QCOMPARE(m_pWebSocket->write(qMessage), (qint64)qMessage.length());
        QTRY_VERIFY_WITH_TIMEOUT(spy.count() != 0, 1000);
        QCOMPARE(spy.count(), 1);
        QCOMPARE(spy.at(0).count(), 1);
@@ -111,7 +111,7 @@ void WebSocketsTest::testBinaryMessage()
 
        QByteArray data("Hello world!");
 
-       QCOMPARE(m_pWebSocket->send(data), (qint64)data.size());
+       QCOMPARE(m_pWebSocket->write(data), (qint64)data.size());
 
        QTRY_VERIFY_WITH_TIMEOUT(spy.count() != 0, 1000);
        QCOMPARE(spy.count(), 1);