diff options
author | Maurice Kalinowski <maurice.kalinowski@qt.io> | 2017-09-01 14:02:47 +0200 |
---|---|---|
committer | Maurice Kalinowski <maurice.kalinowski@qt.io> | 2017-09-01 18:52:20 +0000 |
commit | 5986b03bad398c91640d31c83e0539a9ef4b4c74 (patch) | |
tree | 87f6ad868344416838b86401765de6dbb7da1705 /examples | |
parent | efbe33940bb9d15be827248da0e2679315b388ab (diff) |
Change signature of QMqttClient::subscribe
Instead of returning a QSharedPointer, return the same pointer. This
improves readability as well as using the subscription from a user
perspective.
The ownership has to stay with the client though, otherwise behavior
is unexpected.
Change-Id: I72d3c15a12faf45c9575af8b3a790dfff1a30c2a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'examples')
6 files changed, 15 insertions, 16 deletions
diff --git a/examples/mqtt/quicksubscription/qmlmqttclient.cpp b/examples/mqtt/quicksubscription/qmlmqttclient.cpp index 7ce4d89..3a9ef41 100644 --- a/examples/mqtt/quicksubscription/qmlmqttclient.cpp +++ b/examples/mqtt/quicksubscription/qmlmqttclient.cpp @@ -58,16 +58,16 @@ QmlMqttClient::QmlMqttClient(QObject *parent) QmlMqttSubscription* QmlMqttClient::subscribe(const QString &topic) { - QSharedPointer<QMqttSubscription> sub = QMqttClient::subscribe(topic, 0); + auto sub = QMqttClient::subscribe(topic, 0); auto result = new QmlMqttSubscription(sub, this); return result; } -QmlMqttSubscription::QmlMqttSubscription(QSharedPointer<QMqttSubscription> s, QmlMqttClient *c) +QmlMqttSubscription::QmlMqttSubscription(QMqttSubscription *s, QmlMqttClient *c) : sub(s) , client(c) { - connect(sub.data(), &QMqttSubscription::messageReceived, this, &QmlMqttSubscription::handleMessage); + connect(sub, &QMqttSubscription::messageReceived, this, &QmlMqttSubscription::handleMessage); m_topic = sub->topic(); } diff --git a/examples/mqtt/quicksubscription/qmlmqttclient.h b/examples/mqtt/quicksubscription/qmlmqttclient.h index 1d6d3b5..ffc45ea 100644 --- a/examples/mqtt/quicksubscription/qmlmqttclient.h +++ b/examples/mqtt/quicksubscription/qmlmqttclient.h @@ -52,7 +52,6 @@ #define QMLMQTTCLIENT_H #include <QtCore/QMap> -#include <QtCore/QSharedPointer> #include <QtMqtt/QMqttClient> #include <QtMqtt/QMqttSubscription> @@ -63,7 +62,7 @@ class QmlMqttSubscription : public QObject Q_OBJECT Q_PROPERTY(QString topic MEMBER m_topic NOTIFY topicChanged) public: - QmlMqttSubscription(QSharedPointer<QMqttSubscription> s, QmlMqttClient *c); + QmlMqttSubscription(QMqttSubscription *s, QmlMqttClient *c); ~QmlMqttSubscription(); Q_SIGNALS: @@ -75,7 +74,7 @@ public slots: private: Q_DISABLE_COPY(QmlMqttSubscription) - QSharedPointer<QMqttSubscription> sub; + QMqttSubscription *sub; QmlMqttClient *client; QString m_topic; }; diff --git a/examples/mqtt/subscriptions/subscriptionwindow.cpp b/examples/mqtt/subscriptions/subscriptionwindow.cpp index 6513060..0b6e0ba 100644 --- a/examples/mqtt/subscriptions/subscriptionwindow.cpp +++ b/examples/mqtt/subscriptions/subscriptionwindow.cpp @@ -51,7 +51,7 @@ #include "subscriptionwindow.h" #include "ui_subscriptionwindow.h" -SubscriptionWindow::SubscriptionWindow(const QSharedPointer<QMqttSubscription> &sub, QWidget *parent) : +SubscriptionWindow::SubscriptionWindow(QMqttSubscription *sub, QWidget *parent) : QWidget(parent), ui(new Ui::SubscriptionWindow), m_sub(sub) @@ -61,12 +61,12 @@ SubscriptionWindow::SubscriptionWindow(const QSharedPointer<QMqttSubscription> & ui->labelSub->setText(m_sub->topic()); ui->labelQoS->setText(QString::number(m_sub->qos())); updateStatus(m_sub->state()); - connect(m_sub.data(), &QMqttSubscription::messageReceived, this, &SubscriptionWindow::updateMessage); - connect(m_sub.data(), &QMqttSubscription::stateChanged, this, &SubscriptionWindow::updateStatus); - connect(m_sub.data(), &QMqttSubscription::qosChanged, [this](quint8 qos) { + connect(m_sub, &QMqttSubscription::messageReceived, this, &SubscriptionWindow::updateMessage); + connect(m_sub, &QMqttSubscription::stateChanged, this, &SubscriptionWindow::updateStatus); + connect(m_sub, &QMqttSubscription::qosChanged, [this](quint8 qos) { ui->labelQoS->setText(QString::number(qos)); }); - connect(ui->pushButton, &QAbstractButton::clicked, m_sub.data(), &QMqttSubscription::unsubscribe); + connect(ui->pushButton, &QAbstractButton::clicked, m_sub, &QMqttSubscription::unsubscribe); } SubscriptionWindow::~SubscriptionWindow() diff --git a/examples/mqtt/subscriptions/subscriptionwindow.h b/examples/mqtt/subscriptions/subscriptionwindow.h index f29fae7..99f38bf 100644 --- a/examples/mqtt/subscriptions/subscriptionwindow.h +++ b/examples/mqtt/subscriptions/subscriptionwindow.h @@ -66,7 +66,7 @@ class SubscriptionWindow : public QWidget Q_OBJECT public: - explicit SubscriptionWindow(const QSharedPointer<QMqttSubscription> &sub, QWidget *parent = 0); + explicit SubscriptionWindow(QMqttSubscription *sub, QWidget *parent = nullptr); ~SubscriptionWindow(); public slots: @@ -74,7 +74,7 @@ public slots: void updateStatus(QMqttSubscription::SubscriptionState state); private: Ui::SubscriptionWindow *ui; - QSharedPointer<QMqttSubscription> m_sub; + QMqttSubscription *m_sub; }; #endif // SUBSCRIPTIONWINDOW_H diff --git a/examples/mqtt/websocketsubscription/clientsubscription.cpp b/examples/mqtt/websocketsubscription/clientsubscription.cpp index c360e27..5a9f379 100644 --- a/examples/mqtt/websocketsubscription/clientsubscription.cpp +++ b/examples/mqtt/websocketsubscription/clientsubscription.cpp @@ -97,12 +97,12 @@ void ClientSubscription::connectAndSubscribe() emit errorOccured(); } - connect(m_subscription.data(), &QMqttSubscription::stateChanged, + connect(m_subscription, &QMqttSubscription::stateChanged, [](QMqttSubscription::SubscriptionState s) { qCDebug(lcWebSocketMqtt) << "Subscription state changed:" << s; }); - connect(m_subscription.data(), &QMqttSubscription::messageReceived, + connect(m_subscription, &QMqttSubscription::messageReceived, [this](QMqttMessage msg) { handleMessage(msg.payload()); }); diff --git a/examples/mqtt/websocketsubscription/clientsubscription.h b/examples/mqtt/websocketsubscription/clientsubscription.h index 3f02e62..79825c3 100644 --- a/examples/mqtt/websocketsubscription/clientsubscription.h +++ b/examples/mqtt/websocketsubscription/clientsubscription.h @@ -76,7 +76,7 @@ public slots: private: QMqttClient m_client; - QSharedPointer<QMqttSubscription> m_subscription; + QMqttSubscription *m_subscription; QUrl m_url; QString m_topic; WebSocketIODevice m_device; |