Forward socket errors to user
Provide accessors and a signal for socket errors, so that the user can react accordingly. This closes issue #6
This commit is contained in:
parent
7242a64a2f
commit
98f40f5589
|
|
@ -56,6 +56,8 @@ void QAmqpClientPrivate::initSocket()
|
|||
QObject::connect(socket, SIGNAL(readyRead()), q, SLOT(_q_readyRead()));
|
||||
QObject::connect(socket, SIGNAL(error(QAbstractSocket::SocketError)),
|
||||
q, SLOT(_q_socketError(QAbstractSocket::SocketError)));
|
||||
QObject::connect(socket, SIGNAL(error(QAbstractSocket::SocketError)),
|
||||
q, SIGNAL(socketError(QAbstractSocket::SocketError)));
|
||||
}
|
||||
|
||||
void QAmqpClientPrivate::setUsername(const QString &username)
|
||||
|
|
@ -172,7 +174,7 @@ void QAmqpClientPrivate::_q_socketError(QAbstractSocket::SocketError error)
|
|||
case QAbstractSocket::ProxyConnectionTimeoutError:
|
||||
|
||||
default:
|
||||
qAmqpDebug() << "socket Error: " << socket->errorString();
|
||||
qAmqpDebug() << "socket error: " << socket->errorString();
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -756,6 +758,12 @@ QString QAmqpClient::customProperty(const QString &name) const
|
|||
return d->customProperties.value(name).toString();
|
||||
}
|
||||
|
||||
QAbstractSocket::SocketError QAmqpClient::socketError() const
|
||||
{
|
||||
Q_D(const QAmqpClient);
|
||||
return d->socket->error();
|
||||
}
|
||||
|
||||
QAMQP::Error QAmqpClient::error() const
|
||||
{
|
||||
Q_D(const QAmqpClient);
|
||||
|
|
|
|||
|
|
@ -69,6 +69,7 @@ public:
|
|||
void addCustomProperty(const QString &name, const QString &value);
|
||||
QString customProperty(const QString &name) const;
|
||||
|
||||
QAbstractSocket::SocketError socketError() const;
|
||||
QAMQP::Error error() const;
|
||||
QString errorString() const;
|
||||
|
||||
|
|
@ -88,6 +89,7 @@ Q_SIGNALS:
|
|||
void connected();
|
||||
void disconnected();
|
||||
void error(QAMQP::Error error);
|
||||
void socketError(QAbstractSocket::SocketError error);
|
||||
|
||||
protected:
|
||||
QAmqpClient(QAmqpClientPrivate *dd, QObject *parent = 0);
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ private Q_SLOTS:
|
|||
void connectDisconnect();
|
||||
void invalidAuthenticationMechanism();
|
||||
void tune();
|
||||
|
||||
void socketError();
|
||||
void validateUri_data();
|
||||
void validateUri();
|
||||
|
||||
|
|
@ -124,6 +124,14 @@ void tst_QAMQPClient::tune()
|
|||
QVERIFY(waitForSignal(&client, SIGNAL(disconnected())));
|
||||
}
|
||||
|
||||
void tst_QAMQPClient::socketError()
|
||||
{
|
||||
QAmqpClient client;
|
||||
client.connectToHost("amqp://127.0.0.1:56725/");
|
||||
QVERIFY(waitForSignal(&client, SIGNAL(socketError(QAbstractSocket::SocketError))));
|
||||
QCOMPARE(client.socketError(), QAbstractSocket::ConnectionRefusedError);
|
||||
}
|
||||
|
||||
void tst_QAMQPClient::validateUri_data()
|
||||
{
|
||||
QTest::addColumn<QString>("uri");
|
||||
|
|
|
|||
Loading…
Reference in New Issue