diff options
author | Corentin Jabot <corentinjabot@gmail.com> | 2012-11-25 17:30:15 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-03-05 18:39:35 +0100 |
commit | 953255abab0f99afe7559da93ba18a876805d78d (patch) | |
tree | 953da560e670c135f2cd2e772c7f83ca2e9627d4 /src/network/socket/qlocalsocket_tcp.cpp | |
parent | 866a5d0c28f458d50ab9e4f011fc7a94822ce6eb (diff) |
Make QLocalSocket connectable with open()
Add getter and setter for handling the server QLocalSocket connects to.
Move the connectServer() implementation to QLocalSocket::open
so the local socket can be handled transparently as a QIODevice
Add a convenient connectToServer(OpenMode) method
Change-Id: Ibc8dc33f79903f92daf2d1ca2e64ead2ce39f33e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/network/socket/qlocalsocket_tcp.cpp')
-rw-r--r-- | src/network/socket/qlocalsocket_tcp.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/network/socket/qlocalsocket_tcp.cpp b/src/network/socket/qlocalsocket_tcp.cpp index cbae8d58ff..cf109c2b2f 100644 --- a/src/network/socket/qlocalsocket_tcp.cpp +++ b/src/network/socket/qlocalsocket_tcp.cpp @@ -214,29 +214,28 @@ void QLocalSocketPrivate::errorOccurred(QLocalSocket::LocalSocketError error, co q->emit stateChanged(state); } -void QLocalSocket::connectToServer(const QString &name, OpenMode openMode) +bool QLocalSocket::open(OpenMode openMode) { Q_D(QLocalSocket); - if (state() == ConnectedState - || state() == ConnectingState) - return; + if (state() == ConnectedState || state() == ConnectingState) { + return false; + } d->errorString.clear(); d->state = ConnectingState; emit stateChanged(d->state); - if (name.isEmpty()) { + if (d->serverName.isEmpty()) { d->errorOccurred(ServerNotFoundError, QLatin1String("QLocalSocket::connectToServer")); - return; + return false; } - d->serverName = name; const QLatin1String prefix("QLocalServer/"); if (name.startsWith(prefix)) - d->fullServerName = name; + d->fullServerName = d->serverName; else - d->fullServerName = prefix + name; + d->fullServerName = prefix + d->serverName; QSettings settings(QLatin1String("QtProject"), QLatin1String("Qt")); bool ok; @@ -244,10 +243,11 @@ void QLocalSocket::connectToServer(const QString &name, OpenMode openMode) if (!ok) { d->errorOccurred(ServerNotFoundError, QLatin1String("QLocalSocket::connectToServer")); - return; + return false; } d->tcpSocket->connectToHost(QHostAddress::LocalHost, port, openMode); QIODevice::open(openMode); + return true; } bool QLocalSocket::setSocketDescriptor(qintptr socketDescriptor, |