diff options
author | Jonas M. Gastal <jgastal@profusion.mobi> | 2012-01-19 17:02:51 -0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-24 01:08:50 +0100 |
commit | b5f2dd65ac0bec4f40ab22464a243b1ac06e294b (patch) | |
tree | f70498652aeb48fb766c0c9906a600bb33aec9b4 /src/network/socket | |
parent | 1955353149781a064bc053b86be6e221b159d4ee (diff) |
Make QAbstractSocket's API virtual where needed.
The following methods have been made virtual:
setReadBufferSize()
socketDescriptor()
setSocketDescriptor()
socketOption()
setSocketOption()
waitForConnected()
waitForDisconnected()
Now that these methods are virtual we no longer need the nasty
polymorphism workarounds for QSslSocket.
Change-Id: I319989b6cdb025ba33d7d53ae90f3a6a3b6b1b7b
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/network/socket')
-rw-r--r-- | src/network/socket/qabstractsocket.cpp | 39 | ||||
-rw-r--r-- | src/network/socket/qabstractsocket.h | 18 |
2 files changed, 7 insertions, 50 deletions
diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index 59b52b3b39..0c5deb58fc 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1734,10 +1734,6 @@ bool QAbstractSocket::setSocketDescriptor(qintptr socketDescriptor, SocketState OpenMode openMode) { Q_D(QAbstractSocket); -#ifndef QT_NO_OPENSSL - if (QSslSocket *socket = qobject_cast<QSslSocket *>(this)) - return socket->setSocketDescriptor(socketDescriptor, socketState, openMode); -#endif d->resetSocketLayer(); d->socketEngine = QAbstractSocketEngine::createSocketEngine(socketDescriptor, this); @@ -1786,13 +1782,6 @@ bool QAbstractSocket::setSocketDescriptor(qintptr socketDescriptor, SocketState */ void QAbstractSocket::setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value) { -#ifndef QT_NO_OPENSSL - if (QSslSocket *sslSocket = qobject_cast<QSslSocket*>(this)) { - sslSocket->setSocketOption(option, value); - return; - } -#endif - if (!d_func()->socketEngine) return; @@ -1827,12 +1816,6 @@ void QAbstractSocket::setSocketOption(QAbstractSocket::SocketOption option, cons */ QVariant QAbstractSocket::socketOption(QAbstractSocket::SocketOption option) { -#ifndef QT_NO_OPENSSL - if (QSslSocket *sslSocket = qobject_cast<QSslSocket*>(this)) { - return sslSocket->socketOption(option); - } -#endif - if (!d_func()->socketEngine) return QVariant(); @@ -1913,13 +1896,6 @@ bool QAbstractSocket::waitForConnected(int msecs) return true; } -#ifndef QT_NO_OPENSSL - // Manual polymorphism; this function is not virtual, but has an overload - // in QSslSocket. - if (QSslSocket *socket = qobject_cast<QSslSocket *>(this)) - return socket->waitForConnected(msecs); -#endif - bool wasPendingClose = d->pendingClose; d->pendingClose = false; QElapsedTimer stopWatch; @@ -2139,12 +2115,6 @@ bool QAbstractSocket::waitForBytesWritten(int msecs) bool QAbstractSocket::waitForDisconnected(int msecs) { Q_D(QAbstractSocket); -#ifndef QT_NO_OPENSSL - // Manual polymorphism; this function is not virtual, but has an overload - // in QSslSocket. - if (QSslSocket *socket = qobject_cast<QSslSocket *>(this)) - return socket->waitForDisconnected(msecs); -#endif // require calling connectToHost() before waitForDisconnected() if (state() == UnconnectedState) { @@ -2756,15 +2726,6 @@ void QAbstractSocket::setReadBufferSize(qint64 size) { Q_D(QAbstractSocket); -#ifndef QT_NO_OPENSSL - // Manual polymorphism; setReadBufferSize() isn't virtual, but QSslSocket overloads - // it. - if (QSslSocket *socket = qobject_cast<QSslSocket *>(this)) { - socket->setReadBufferSize(size); - return; - } -#endif - if (d->readBufferMaxSize == size) return; d->readBufferMaxSize = size; diff --git a/src/network/socket/qabstractsocket.h b/src/network/socket/qabstractsocket.h index f74da53ae3..6d415d1997 100644 --- a/src/network/socket/qabstractsocket.h +++ b/src/network/socket/qabstractsocket.h @@ -148,20 +148,17 @@ public: QHostAddress peerAddress() const; QString peerName() const; - // ### Qt 5: Make setReadBufferSize() virtual qint64 readBufferSize() const; - void setReadBufferSize(qint64 size); + virtual void setReadBufferSize(qint64 size); void abort(); - // ### Qt 5: Make socketDescriptor() and setSocketDescriptor() virtual. - qintptr socketDescriptor() const; - bool setSocketDescriptor(qintptr socketDescriptor, SocketState state = ConnectedState, + virtual qintptr socketDescriptor() const; + virtual bool setSocketDescriptor(qintptr socketDescriptor, SocketState state = ConnectedState, OpenMode openMode = ReadWrite); - // ### Qt 5: Make virtual? - void setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value); - QVariant socketOption(QAbstractSocket::SocketOption option); + virtual void setSocketOption(QAbstractSocket::SocketOption option, const QVariant &value); + virtual QVariant socketOption(QAbstractSocket::SocketOption option); SocketType socketType() const; SocketState state() const; @@ -174,11 +171,10 @@ public: bool flush(); // for synchronous access - // ### Qt 5: Make waitForConnected() and waitForDisconnected() virtual. - bool waitForConnected(int msecs = 30000); + virtual bool waitForConnected(int msecs = 30000); bool waitForReadyRead(int msecs = 30000); bool waitForBytesWritten(int msecs = 30000); - bool waitForDisconnected(int msecs = 30000); + virtual bool waitForDisconnected(int msecs = 30000); #ifndef QT_NO_NETWORKPROXY void setProxy(const QNetworkProxy &networkProxy); |