This is the default level. All critical parts were identified in the
previous commits.
Fixes: QTBUG-135764
Pick-to: 6.10 6.9 6.8
Change-Id: Ib9df3db37e3efe3074f0fbc99eb60d31281d5a5a
Reviewed-by: Matthias Rauter <matthias.rauter@qt.io>
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
License files are organized under LICENSES directory.
Pick-to: 6.4
Task-number: QTBUG-67283
Change-Id: Ie4309963c8e17d4e7dad602f61a660246d5e23cb
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
This reverts commit ccd80bb35b
which breaks binary compatibility.
Change-Id: Ica34959914db592ce5a138b461cdf1d2f5994c5c
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
As agreed on the review process, using sharedSubscription(Name) is more
verbose and descriptive.
Change-Id: I81fa5d9f74ecd12d3b90d485f67b52dfb4f70bf5
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
The scheme to create a shared subscription is $share/sharename/
topicfilter. During QMqttSubscription creation, the topic gets split and
shareName is a newly introduced property to verify whether a
subscription has been shared.
Task-number: QTPM-1452
Change-Id: I99c1aa9bb3bf8db2a930ce031c1a0a4882f01bcd
Reviewed-by: hjk <hjk@qt.io>
Use the <QtModule/qheader.h> syntax in headers to follow the Qt coding
conventions, and use local "qheader_p.h" includes for including own
headers from within the QtMqtt module itself. These changes, that
eliminate dependencies from QtMqtt sources to syncqt's generated
headers, make it possible to e.g. build QtMqtt as part of a project
tree, and with custom build systems.
Change-Id: Iebd98ea70dc89d8171dff3616ebfc661f5993f9f
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: hjk <hjk@qt.io>
For "topics" the standard defines topic names and topic filters with
specific characteristics. QMqttTopicName and QMqttTopicFilter implement
this requirements.
[ChangeLog][General] Added QMqttTopicName and QMqttTopicFilter
Change-Id: Ie2b6851ec9249f20d05c4b8df3c2f27afc2be4b9
Reviewed-by: hjk <hjk@qt.io>
Should not be part of user API and hence be unaccessible.
Change-Id: I7a82c747673eaee9c93d150f53164b395ec6bd66
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
While there is no existing API to QML, exposing connectToHost and others
helps in exporting QMqttClient to QML.
Change-Id: I9f71cb589be75e90e9b40d78cc32d25aa08e4f72
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
QMqttMessage stores all information about a published message being
received on a subscription. A user might be interested in more details,
hence provide all known details. Keep the class as lean as possible,
because its lifetime usually is very limited.
Change-Id: I6bfc3d8e93117cef370b1f02eb0d432c04341947
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
Feedback given was that we should mark them as virtual. However, base
classes are virtual already. Hence this is redundant information.
Change-Id: Ie12da7ce54694b03cb8451939211bdea0f0ac65a
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
QMqttSubscription is a public class, hence it must not have fixed
members.
Change-Id: Iac085a1ceea2b6276812470ac48f3cd642dc48ec
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
This way one can connect to the same signal either with or without
interest for the topic.
Another option had been to have two different messageReceived signals,
one including just the message and another the message plus the topic.
Then again, that would double the amount of signals and also cause
troubles connecting to a signal with different arguments, including
static cast magic.
Using QString for the message implies that all messages are strings,
which is a completely wrong assumption. Instead use QByteArray which can
represent any type of data.
The class handles all subscription related items. Developers can use it
to manage the state of the subscription. Having a subscription object
simplifies message handling, there is no need to do a topic check for
each message received.