aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2022-12-26 20:19:34 +0100
committerLinus Jahn <lnj@kaidan.im>2022-12-26 20:48:34 +0100
commit71442ab927cd5c1c235528442fe3706f33e7ff6e (patch)
tree0fc07e28877a55d8dc379bd26d00c6dd62250cfd /src
parent847de2ddc00057049de6d7f507711906e7dfd3a8 (diff)
downloadqxmpp-71442ab927cd5c1c235528442fe3706f33e7ff6e.tar.gz
Move PubSubIq into QXmpp::Private namespace
This way users won't use it accidentally.
Diffstat (limited to 'src')
-rw-r--r--src/base/QXmppPubSubIq.cpp72
-rw-r--r--src/base/QXmppPubSubIq_p.h28
-rw-r--r--src/client/QXmppPubSubManager.cpp100
-rw-r--r--src/client/QXmppPubSubManager.h18
4 files changed, 113 insertions, 105 deletions
diff --git a/src/base/QXmppPubSubIq.cpp b/src/base/QXmppPubSubIq.cpp
index ca703c33..d45df2d3 100644
--- a/src/base/QXmppPubSubIq.cpp
+++ b/src/base/QXmppPubSubIq.cpp
@@ -13,6 +13,10 @@
#include <QSharedData>
+using namespace QXmpp::Private;
+
+/// \cond
+
///
/// \class QXmppPubSubIqBase
///
@@ -80,7 +84,7 @@ static const QStringList PUBSUB_QUERIES = {
class QXmppPubSubIqPrivate : public QSharedData
{
public:
- QXmppPubSubIqBase::QueryType queryType = QXmppPubSubIqBase::Items;
+ PubSubIqBase::QueryType queryType = PubSubIqBase::Items;
QString queryJid;
QString queryNode;
QString subscriptionId;
@@ -94,23 +98,23 @@ public:
///
/// Constructs a PubSub IQ.
///
-QXmppPubSubIqBase::QXmppPubSubIqBase()
+PubSubIqBase::PubSubIqBase()
: d(new QXmppPubSubIqPrivate)
{
}
/// Default copy-constructor
-QXmppPubSubIqBase::QXmppPubSubIqBase(const QXmppPubSubIqBase &iq) = default;
+PubSubIqBase::PubSubIqBase(const PubSubIqBase &iq) = default;
-QXmppPubSubIqBase::~QXmppPubSubIqBase() = default;
+PubSubIqBase::~PubSubIqBase() = default;
/// Default assignment operator
-QXmppPubSubIqBase &QXmppPubSubIqBase::operator=(const QXmppPubSubIqBase &iq) = default;
+PubSubIqBase &PubSubIqBase::operator=(const PubSubIqBase &iq) = default;
///
/// Returns the PubSub query type for this IQ.
///
-QXmppPubSubIqBase::QueryType QXmppPubSubIqBase::queryType() const
+PubSubIqBase::QueryType PubSubIqBase::queryType() const
{
return d->queryType;
}
@@ -120,7 +124,7 @@ QXmppPubSubIqBase::QueryType QXmppPubSubIqBase::queryType() const
///
/// \param queryType
///
-void QXmppPubSubIqBase::setQueryType(QXmppPubSubIqBase::QueryType queryType)
+void PubSubIqBase::setQueryType(PubSubIqBase::QueryType queryType)
{
d->queryType = queryType;
}
@@ -128,7 +132,7 @@ void QXmppPubSubIqBase::setQueryType(QXmppPubSubIqBase::QueryType queryType)
///
/// Returns the JID being queried.
///
-QString QXmppPubSubIqBase::queryJid() const
+QString PubSubIqBase::queryJid() const
{
return d->queryJid;
}
@@ -138,7 +142,7 @@ QString QXmppPubSubIqBase::queryJid() const
///
/// \param queryJid
///
-void QXmppPubSubIqBase::setQueryJid(const QString &queryJid)
+void PubSubIqBase::setQueryJid(const QString &queryJid)
{
d->queryJid = queryJid;
}
@@ -146,7 +150,7 @@ void QXmppPubSubIqBase::setQueryJid(const QString &queryJid)
///
/// Returns the name of the node being queried.
///
-QString QXmppPubSubIqBase::queryNode() const
+QString PubSubIqBase::queryNode() const
{
return d->queryNode;
}
@@ -156,7 +160,7 @@ QString QXmppPubSubIqBase::queryNode() const
///
/// \param queryNodeName
///
-void QXmppPubSubIqBase::setQueryNode(const QString &queryNodeName)
+void PubSubIqBase::setQueryNode(const QString &queryNodeName)
{
d->queryNode = queryNodeName;
}
@@ -166,7 +170,7 @@ void QXmppPubSubIqBase::setQueryNode(const QString &queryNodeName)
///
/// This does not work for SubscriptionQuery IQs, use subscription() instead.
///
-QString QXmppPubSubIqBase::subscriptionId() const
+QString PubSubIqBase::subscriptionId() const
{
return d->subscriptionId;
}
@@ -176,7 +180,7 @@ QString QXmppPubSubIqBase::subscriptionId() const
///
/// This does not work for SubscriptionQuery IQs, use setSubscription() instead.
///
-void QXmppPubSubIqBase::setSubscriptionId(const QString &subscriptionId)
+void PubSubIqBase::setSubscriptionId(const QString &subscriptionId)
{
d->subscriptionId = subscriptionId;
}
@@ -184,7 +188,7 @@ void QXmppPubSubIqBase::setSubscriptionId(const QString &subscriptionId)
///
/// Returns the included subscriptions.
///
-QVector<QXmppPubSubSubscription> QXmppPubSubIqBase::subscriptions() const
+QVector<QXmppPubSubSubscription> PubSubIqBase::subscriptions() const
{
return d->subscriptions;
}
@@ -192,7 +196,7 @@ QVector<QXmppPubSubSubscription> QXmppPubSubIqBase::subscriptions() const
///
/// Sets the included subscriptions.
///
-void QXmppPubSubIqBase::setSubscriptions(const QVector<QXmppPubSubSubscription> &subscriptions)
+void PubSubIqBase::setSubscriptions(const QVector<QXmppPubSubSubscription> &subscriptions)
{
d->subscriptions = subscriptions;
}
@@ -204,7 +208,7 @@ void QXmppPubSubIqBase::setSubscriptions(const QVector<QXmppPubSubSubscription>
/// subscription if existant. This can be used for both query types,
/// Subscription and Subscriptions.
///
-std::optional<QXmppPubSubSubscription> QXmppPubSubIqBase::subscription() const
+std::optional<QXmppPubSubSubscription> PubSubIqBase::subscription() const
{
if (d->subscriptions.isEmpty()) {
return std::nullopt;
@@ -218,7 +222,7 @@ std::optional<QXmppPubSubSubscription> QXmppPubSubIqBase::subscription() const
/// This is a utility function for setSubscriptions(). It can be used for both
/// query types, Subscription and Subscriptions.
///
-void QXmppPubSubIqBase::setSubscription(const std::optional<QXmppPubSubSubscription> &subscription)
+void PubSubIqBase::setSubscription(const std::optional<QXmppPubSubSubscription> &subscription)
{
if (subscription) {
d->subscriptions = { *subscription };
@@ -230,7 +234,7 @@ void QXmppPubSubIqBase::setSubscription(const std::optional<QXmppPubSubSubscript
///
/// Returns the included affiliations.
///
-QVector<QXmppPubSubAffiliation> QXmppPubSubIqBase::affiliations() const
+QVector<QXmppPubSubAffiliation> PubSubIqBase::affiliations() const
{
return d->affiliations;
}
@@ -238,7 +242,7 @@ QVector<QXmppPubSubAffiliation> QXmppPubSubIqBase::affiliations() const
///
/// Sets the included affiliations.
///
-void QXmppPubSubIqBase::setAffiliations(const QVector<QXmppPubSubAffiliation> &affiliations)
+void PubSubIqBase::setAffiliations(const QVector<QXmppPubSubAffiliation> &affiliations)
{
d->affiliations = affiliations;
}
@@ -248,7 +252,7 @@ void QXmppPubSubIqBase::setAffiliations(const QVector<QXmppPubSubAffiliation> &a
///
/// This is only used for queries with type ItemsQuery.
///
-std::optional<uint32_t> QXmppPubSubIqBase::maxItems() const
+std::optional<uint32_t> PubSubIqBase::maxItems() const
{
if (d->maxItems) {
return d->maxItems;
@@ -261,7 +265,7 @@ std::optional<uint32_t> QXmppPubSubIqBase::maxItems() const
///
/// This is only used for queries with type ItemsQuery.
///
-void QXmppPubSubIqBase::setMaxItems(std::optional<uint32_t> maxItems)
+void PubSubIqBase::setMaxItems(std::optional<uint32_t> maxItems)
{
d->maxItems = maxItems.value_or(0);
}
@@ -269,7 +273,7 @@ void QXmppPubSubIqBase::setMaxItems(std::optional<uint32_t> maxItems)
///
/// Returns a data form if the IQ contains one.
///
-std::optional<QXmppDataForm> QXmppPubSubIqBase::dataForm() const
+std::optional<QXmppDataForm> PubSubIqBase::dataForm() const
{
return d->dataForm;
}
@@ -277,7 +281,7 @@ std::optional<QXmppDataForm> QXmppPubSubIqBase::dataForm() const
///
/// Sets a data form (or clears it by setting std::nullopt).
///
-void QXmppPubSubIqBase::setDataForm(const std::optional<QXmppDataForm> &dataForm)
+void PubSubIqBase::setDataForm(const std::optional<QXmppDataForm> &dataForm)
{
d->dataForm = dataForm;
}
@@ -287,7 +291,7 @@ void QXmppPubSubIqBase::setDataForm(const std::optional<QXmppDataForm> &dataForm
///
/// If this value is set the results are incomplete.
///
-std::optional<QXmppResultSetReply> QXmppPubSubIqBase::itemsContinuation() const
+std::optional<QXmppResultSetReply> PubSubIqBase::itemsContinuation() const
{
return d->itemsContinuation;
}
@@ -297,21 +301,20 @@ std::optional<QXmppResultSetReply> QXmppPubSubIqBase::itemsContinuation() const
///
/// If this value is set the results are incomplete.
///
-void QXmppPubSubIqBase::setItemsContinuation(const std::optional<QXmppResultSetReply> &itemsContinuation)
+void PubSubIqBase::setItemsContinuation(const std::optional<QXmppResultSetReply> &itemsContinuation)
{
d->itemsContinuation = itemsContinuation;
}
-/// \cond
-bool QXmppPubSubIqBase::isPubSubIq(const QDomElement &element)
+bool PubSubIqBase::isPubSubIq(const QDomElement &element)
{
// no special requirements for the item / it's payload
- return QXmppPubSubIqBase::isPubSubIq(element, [](const QDomElement &) {
+ return PubSubIqBase::isPubSubIq(element, [](const QDomElement &) {
return true;
});
}
-bool QXmppPubSubIqBase::isPubSubIq(const QDomElement &element, bool (*isItemValid)(const QDomElement &))
+bool PubSubIqBase::isPubSubIq(const QDomElement &element, bool (*isItemValid)(const QDomElement &))
{
// IQs must have only one direct child element.
const auto pubSubElement = element.firstChildElement();
@@ -401,7 +404,7 @@ bool QXmppPubSubIqBase::isPubSubIq(const QDomElement &element, bool (*isItemVali
return true;
}
-void QXmppPubSubIqBase::parseElementFromChild(const QDomElement &element)
+void PubSubIqBase::parseElementFromChild(const QDomElement &element)
{
const auto findChildElement = [](const QDomElement &element, const QString &tag, const QString &namespaceUri) {
for (auto subElement = element.firstChildElement(tag);
@@ -534,7 +537,7 @@ void QXmppPubSubIqBase::parseElementFromChild(const QDomElement &element)
}
}
-void QXmppPubSubIqBase::toXmlElementFromChild(QXmlStreamWriter *writer) const
+void PubSubIqBase::toXmlElementFromChild(QXmlStreamWriter *writer) const
{
writer->writeStartElement(QStringLiteral("pubsub"));
writer->writeDefaultNamespace(queryTypeIsOwnerIq(d->queryType) ? ns_pubsub_owner : ns_pubsub);
@@ -646,9 +649,8 @@ void QXmppPubSubIqBase::toXmlElementFromChild(QXmlStreamWriter *writer) const
}
writer->writeEndElement(); // pubsub
}
-/// \endcond
-std::optional<QXmppPubSubIqBase::QueryType> QXmppPubSubIqBase::queryTypeFromDomElement(const QDomElement &element)
+std::optional<PubSubIqBase::QueryType> PubSubIqBase::queryTypeFromDomElement(const QDomElement &element)
{
QueryType type;
if (auto index = PUBSUB_QUERIES.indexOf(element.tagName()); index != -1) {
@@ -677,7 +679,7 @@ std::optional<QXmppPubSubIqBase::QueryType> QXmppPubSubIqBase::queryTypeFromDomE
}
}
-bool QXmppPubSubIqBase::queryTypeIsOwnerIq(QueryType type)
+bool PubSubIqBase::queryTypeIsOwnerIq(QueryType type)
{
switch (type) {
case OwnerAffiliations:
@@ -702,3 +704,5 @@ bool QXmppPubSubIqBase::queryTypeIsOwnerIq(QueryType type)
}
return false;
}
+
+/// \endcond
diff --git a/src/base/QXmppPubSubIq_p.h b/src/base/QXmppPubSubIq_p.h
index ac33766a..eb5ed43f 100644
--- a/src/base/QXmppPubSubIq_p.h
+++ b/src/base/QXmppPubSubIq_p.h
@@ -20,7 +20,9 @@ class QXmppPubSubSubscription;
class QXmppPubSubAffiliation;
class QXmppResultSetReply;
-class QXMPP_EXPORT QXmppPubSubIqBase : public QXmppIq
+namespace QXmpp::Private {
+
+class QXMPP_EXPORT PubSubIqBase : public QXmppIq
{
public:
/// This enum is used to describe a publish-subscribe query type.
@@ -44,11 +46,11 @@ public:
Unsubscribe,
};
- QXmppPubSubIqBase();
- QXmppPubSubIqBase(const QXmppPubSubIqBase &other);
- ~QXmppPubSubIqBase();
+ PubSubIqBase();
+ PubSubIqBase(const PubSubIqBase &other);
+ ~PubSubIqBase();
- QXmppPubSubIqBase &operator=(const QXmppPubSubIqBase &other);
+ PubSubIqBase &operator=(const PubSubIqBase &other);
QueryType queryType() const;
void setQueryType(QueryType queryType);
@@ -102,7 +104,7 @@ private:
};
template<typename T = QXmppPubSubItem>
-class QXmppPubSubIq : public QXmppPubSubIqBase
+class PubSubIq : public PubSubIqBase
{
public:
QVector<T> items() const;
@@ -121,28 +123,28 @@ private:
};
template<typename T>
-QVector<T> QXmppPubSubIq<T>::items() const
+QVector<T> PubSubIq<T>::items() const
{
return m_items;
}
template<typename T>
-void QXmppPubSubIq<T>::setItems(const QVector<T> &items)
+void PubSubIq<T>::setItems(const QVector<T> &items)
{
m_items = items;
}
template<typename T>
-bool QXmppPubSubIq<T>::isPubSubIq(const QDomElement &element)
+bool PubSubIq<T>::isPubSubIq(const QDomElement &element)
{
- return QXmppPubSubIqBase::isPubSubIq(element, [](const QDomElement &item) -> bool {
+ return PubSubIqBase::isPubSubIq(element, [](const QDomElement &item) -> bool {
return T::isItem(item);
});
}
/// \cond
template<typename T>
-void QXmppPubSubIq<T>::parseItems(const QDomElement &queryElement)
+void PubSubIq<T>::parseItems(const QDomElement &queryElement)
{
for (auto childElement = queryElement.firstChildElement(QStringLiteral("item"));
!childElement.isNull();
@@ -154,7 +156,7 @@ void QXmppPubSubIq<T>::parseItems(const QDomElement &queryElement)
}
template<typename T>
-void QXmppPubSubIq<T>::serializeItems(QXmlStreamWriter *writer) const
+void PubSubIq<T>::serializeItems(QXmlStreamWriter *writer) const
{
for (const auto &item : std::as_const(m_items)) {
item.toXml(writer);
@@ -162,4 +164,6 @@ void QXmppPubSubIq<T>::serializeItems(QXmlStreamWriter *writer) const
}
/// \endcond
+} // namespace QXmpp::Private
+
#endif // QXMPPPUBSUBIQ_H
diff --git a/src/client/QXmppPubSubManager.cpp b/src/client/QXmppPubSubManager.cpp
index 7d21db80..07dbff35 100644
--- a/src/client/QXmppPubSubManager.cpp
+++ b/src/client/QXmppPubSubManager.cpp
@@ -293,9 +293,9 @@ QFuture<QXmppPubSubManager::NodesResult> QXmppPubSubManager::fetchNodes(const QS
///
auto QXmppPubSubManager::createNode(const QString &jid, const QString &nodeName) -> QFuture<Result>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Create);
+ request.setQueryType(PubSubIq<>::Create);
request.setQueryNode(nodeName);
request.setTo(jid);
@@ -316,9 +316,9 @@ auto QXmppPubSubManager::createNode(const QString &jid, const QString &nodeName)
///
auto QXmppPubSubManager::createNode(const QString &jid, const QString &nodeName, const QXmppPubSubNodeConfig &config) -> QFuture<Result>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Create);
+ request.setQueryType(PubSubIq<>::Create);
request.setQueryNode(nodeName);
request.setTo(jid);
request.setDataForm(config);
@@ -337,13 +337,13 @@ auto QXmppPubSubManager::createNode(const QString &jid, const QString &nodeName,
///
QFuture<QXmppPubSubManager::InstantNodeResult> QXmppPubSubManager::createInstantNode(const QString &jid)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Create);
+ request.setQueryType(PubSubIq<>::Create);
request.setTo(jid);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> InstantNodeResult {
+ [](const PubSubIq<> &iq) -> InstantNodeResult {
return iq.queryNode();
});
}
@@ -360,14 +360,14 @@ QFuture<QXmppPubSubManager::InstantNodeResult> QXmppPubSubManager::createInstant
///
auto QXmppPubSubManager::createInstantNode(const QString &jid, const QXmppPubSubNodeConfig &config) -> QFuture<InstantNodeResult>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Create);
+ request.setQueryType(PubSubIq<>::Create);
request.setTo(jid);
request.setDataForm(config);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> InstantNodeResult {
+ [](const PubSubIq<> &iq) -> InstantNodeResult {
return iq.queryNode();
});
}
@@ -381,9 +381,9 @@ auto QXmppPubSubManager::createInstantNode(const QString &jid, const QXmppPubSub
///
auto QXmppPubSubManager::deleteNode(const QString &jid, const QString &nodeName) -> QFuture<Result>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Delete);
+ request.setQueryType(PubSubIq<>::Delete);
request.setQueryNode(nodeName);
request.setTo(jid);
@@ -430,9 +430,9 @@ QFuture<QXmppPubSubManager::ItemIdsResult> QXmppPubSubManager::requestItemIds(co
///
auto QXmppPubSubManager::retractItem(const QString &jid, const QString &nodeName, const QString &itemId) -> QFuture<Result>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Retract);
+ request.setQueryType(PubSubIq<>::Retract);
request.setQueryNode(nodeName);
request.setItems({ QXmppPubSubItem(itemId) });
request.setTo(jid);
@@ -462,9 +462,9 @@ auto QXmppPubSubManager::retractItem(const QString &jid, const QString &nodeName
///
auto QXmppPubSubManager::purgeItems(const QString &jid, const QString &nodeName) -> QFuture<Result>
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIq<>::Purge);
+ request.setQueryType(PubSubIq<>::Purge);
request.setQueryNode(nodeName);
request.setTo(jid);
@@ -491,14 +491,14 @@ QFuture<QXmppPubSubManager::SubscriptionsResult> QXmppPubSubManager::requestSubs
///
QFuture<QXmppPubSubManager::SubscriptionsResult> QXmppPubSubManager::requestSubscriptions(const QString &jid, const QString &nodeName)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Get);
request.setTo(jid);
- request.setQueryType(QXmppPubSubIq<>::Subscriptions);
+ request.setQueryType(PubSubIq<>::Subscriptions);
request.setQueryNode(nodeName);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> SubscriptionsResult {
+ [](const PubSubIq<> &iq) -> SubscriptionsResult {
return iq.subscriptions();
});
}
@@ -515,14 +515,14 @@ QFuture<QXmppPubSubManager::SubscriptionsResult> QXmppPubSubManager::requestSubs
///
QFuture<QXmppPubSubManager::AffiliationsResult> QXmppPubSubManager::requestNodeAffiliations(const QString &jid, const QString &nodeName)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Get);
request.setTo(jid);
- request.setQueryType(QXmppPubSubIq<>::OwnerAffiliations);
+ request.setQueryType(PubSubIq<>::OwnerAffiliations);
request.setQueryNode(nodeName);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> AffiliationsResult {
+ [](const PubSubIq<> &iq) -> AffiliationsResult {
return iq.affiliations();
});
}
@@ -547,14 +547,14 @@ QFuture<QXmppPubSubManager::AffiliationsResult> QXmppPubSubManager::requestAffil
///
QFuture<QXmppPubSubManager::AffiliationsResult> QXmppPubSubManager::requestAffiliations(const QString &jid, const QString &nodeName)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Get);
request.setTo(jid);
- request.setQueryType(QXmppPubSubIq<>::Affiliations);
+ request.setQueryType(PubSubIq<>::Affiliations);
request.setQueryNode(nodeName);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> AffiliationsResult {
+ [](const PubSubIq<> &iq) -> AffiliationsResult {
return iq.affiliations();
});
}
@@ -581,15 +581,15 @@ QFuture<QXmppPubSubManager::OptionsResult> QXmppPubSubManager::requestSubscribeO
///
QFuture<QXmppPubSubManager::OptionsResult> QXmppPubSubManager::requestSubscribeOptions(const QString &service, const QString &nodeName, const QString &subscriberJid)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Get);
request.setTo(service);
- request.setQueryType(QXmppPubSubIq<>::Options);
+ request.setQueryType(PubSubIq<>::Options);
request.setQueryNode(nodeName);
request.setQueryJid(subscriberJid);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> OptionsResult {
+ [](const PubSubIq<> &iq) -> OptionsResult {
if (const auto form = iq.dataForm()) {
if (const auto options = QXmppPubSubSubscribeOptions::fromDataForm(*form)) {
return *options;
@@ -628,10 +628,10 @@ QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::setSubscribeOptions(cons
///
QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::setSubscribeOptions(const QString &service, const QString &nodeName, const QXmppPubSubSubscribeOptions &options, const QString &subscriberJid)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
request.setTo(service);
- request.setQueryType(QXmppPubSubIq<>::Options);
+ request.setQueryType(PubSubIq<>::Options);
request.setDataForm(options);
request.setQueryNode(nodeName);
request.setQueryJid(subscriberJid);
@@ -656,14 +656,14 @@ QFuture<QXmppPubSubManager::NodeConfigResult> QXmppPubSubManager::requestNodeCon
{
using Error = QXmppStanza::Error;
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Get);
request.setTo(service);
request.setQueryNode(nodeName);
- request.setQueryType(QXmppPubSubIq<>::Configure);
+ request.setQueryType(PubSubIq<>::Configure);
return chainIq(client()->sendIq(std::move(request)), this,
- [](QXmppPubSubIq<> &&iq) -> NodeConfigResult {
+ [](PubSubIq<> &&iq) -> NodeConfigResult {
if (const auto dataForm = iq.dataForm()) {
if (const auto config = QXmppPubSubNodeConfig::fromDataForm(*dataForm)) {
return *config;
@@ -689,11 +689,11 @@ QFuture<QXmppPubSubManager::NodeConfigResult> QXmppPubSubManager::requestNodeCon
///
QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::configureNode(const QString &service, const QString &nodeName, const QXmppPubSubNodeConfig &config)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
request.setTo(service);
request.setQueryNode(nodeName);
- request.setQueryType(QXmppPubSubIq<>::Configure);
+ request.setQueryType(PubSubIq<>::Configure);
request.setDataForm(config);
return client()->sendGenericIq(std::move(request));
}
@@ -710,11 +710,11 @@ QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::configureNode(const QStr
///
QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::cancelNodeConfiguration(const QString &service, const QString &nodeName)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
request.setTo(service);
request.setQueryNode(nodeName);
- request.setQueryType(QXmppPubSubIq<>::Configure);
+ request.setQueryType(PubSubIq<>::Configure);
request.setDataForm(QXmppDataForm(QXmppDataForm::Cancel));
return client()->sendGenericIq(std::move(request));
}
@@ -730,11 +730,11 @@ QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::cancelNodeConfiguration(
///
QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::subscribeToNode(const QString &serviceJid, const QString &nodeName, const QString &subscriberJid)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
request.setTo(serviceJid);
request.setQueryNode(nodeName);
- request.setQueryType(QXmppPubSubIq<>::Subscribe);
+ request.setQueryType(PubSubIq<>::Subscribe);
request.setQueryJid(subscriberJid);
return client()->sendGenericIq(std::move(request));
}
@@ -750,11 +750,11 @@ QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::subscribeToNode(const QS
///
QFuture<QXmppPubSubManager::Result> QXmppPubSubManager::unsubscribeFromNode(const QString &serviceJid, const QString &nodeName, const QString &subscriberJid)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setType(QXmppIq::Set);
request.setTo(serviceJid);
request.setQueryNode(nodeName);
- request.setQueryType(QXmppPubSubIq<>::Unsubscribe);
+ request.setQueryType(PubSubIq<>::Unsubscribe);
request.setQueryJid(subscriberJid);
return client()->sendGenericIq(std::move(request));
}
@@ -1001,12 +1001,12 @@ bool QXmppPubSubManager::handleStanza(const QDomElement &element)
return false;
}
-QXmppPubSubIq<> QXmppPubSubManager::requestItemsIq(const QString &jid, const QString &nodeName, const QStringList &itemIds)
+PubSubIq<> QXmppPubSubManager::requestItemsIq(const QString &jid, const QString &nodeName, const QStringList &itemIds)
{
- QXmppPubSubIq request;
+ PubSubIq request;
request.setTo(jid);
request.setType(QXmppIq::Get);
- request.setQueryType(QXmppPubSubIqBase::Items);
+ request.setQueryType(PubSubIqBase::Items);
request.setQueryNode(nodeName);
if (!itemIds.isEmpty()) {
@@ -1020,13 +1020,13 @@ QXmppPubSubIq<> QXmppPubSubManager::requestItemsIq(const QString &jid, const QSt
return request;
}
-auto QXmppPubSubManager::publishItem(QXmppPubSubIqBase &&request) -> QFuture<PublishItemResult>
+auto QXmppPubSubManager::publishItem(PubSubIqBase &&request) -> QFuture<PublishItemResult>
{
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIqBase::Publish);
+ request.setQueryType(PubSubIqBase::Publish);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> PublishItemResult {
+ [](const PubSubIq<> &iq) -> PublishItemResult {
if (!iq.items().isEmpty()) {
return iq.items().constFirst().id();
} else {
@@ -1035,13 +1035,13 @@ auto QXmppPubSubManager::publishItem(QXmppPubSubIqBase &&request) -> QFuture<Pub
});
}
-auto QXmppPubSubManager::publishItems(QXmppPubSubIqBase &&request) -> QFuture<PublishItemsResult>
+auto QXmppPubSubManager::publishItems(PubSubIqBase &&request) -> QFuture<PublishItemsResult>
{
request.setType(QXmppIq::Set);
- request.setQueryType(QXmppPubSubIqBase::Publish);
+ request.setQueryType(PubSubIqBase::Publish);
return chainIq(client()->sendIq(std::move(request)), this,
- [](const QXmppPubSubIq<> &iq) -> PublishItemsResult {
+ [](const PubSubIq<> &iq) -> PublishItemsResult {
const auto itemToId = [](const QXmppPubSubItem &item) {
return item.id();
};
diff --git a/src/client/QXmppPubSubManager.h b/src/client/QXmppPubSubManager.h
index 912de5d7..b3e99552 100644
--- a/src/client/QXmppPubSubManager.h
+++ b/src/client/QXmppPubSubManager.h
@@ -153,9 +153,9 @@ public:
/// \endcond
private:
- QFuture<PublishItemResult> publishItem(QXmppPubSubIqBase &&iq);
- QFuture<PublishItemsResult> publishItems(QXmppPubSubIqBase &&iq);
- static QXmppPubSubIq<> requestItemsIq(const QString &jid, const QString &nodeName, const QStringList &itemIds);
+ QFuture<PublishItemResult> publishItem(QXmpp::Private::PubSubIqBase &&iq);
+ QFuture<PublishItemsResult> publishItems(QXmpp::Private::PubSubIqBase &&iq);
+ static QXmpp::Private::PubSubIq<> requestItemsIq(const QString &jid, const QString &nodeName, const QStringList &itemIds);
// We may need a d-ptr in the future.
void *d = nullptr;
@@ -178,7 +178,7 @@ QFuture<QXmppPubSubManager::ItemResult<T>> QXmppPubSubManager::requestItem(const
using namespace QXmpp::Private;
using Error = QXmppStanza::Error;
return chainIq(client()->sendIq(requestItemsIq(jid, nodeName, { itemId })), this,
- [](QXmppPubSubIq<T> &&iq) -> ItemResult<T> {
+ [](PubSubIq<T> &&iq) -> ItemResult<T> {
if (!iq.items().isEmpty()) {
return iq.items().constFirst();
}
@@ -235,7 +235,7 @@ QFuture<QXmppPubSubManager::ItemsResult<T>> QXmppPubSubManager::requestItems(con
{
using namespace QXmpp::Private;
return chainIq(client()->sendIq(requestItemsIq(jid, nodeName, itemIds)), this,
- [](QXmppPubSubIq<T> &&iq) -> ItemsResult<T> {
+ [](PubSubIq<T> &&iq) -> ItemsResult<T> {
return Items<T> {
iq.items(),
iq.itemsContinuation(),
@@ -259,7 +259,7 @@ QFuture<QXmppPubSubManager::PublishItemResult> QXmppPubSubManager::publishItem(c
const QString &nodeName,
const T &item)
{
- QXmppPubSubIq<T> request;
+ QXmpp::Private::PubSubIq<T> request;
request.setTo(jid);
request.setItems({ item });
request.setQueryNode(nodeName);
@@ -284,7 +284,7 @@ QFuture<QXmppPubSubManager::PublishItemResult> QXmppPubSubManager::publishItem(c
const T &item,
const QXmppPubSubPublishOptions &publishOptions)
{
- QXmppPubSubIq<T> request;
+ QXmpp::Private::PubSubIq<T> request;
request.setTo(jid);
request.setItems({ item });
request.setQueryNode(nodeName);
@@ -305,7 +305,7 @@ QFuture<QXmppPubSubManager::PublishItemsResult> QXmppPubSubManager::publishItems
const QString &nodeName,
const QVector<T> &items)
{
- QXmppPubSubIq<T> request;
+ QXmpp::Private::PubSubIq<T> request;
request.setTo(jid);
request.setItems(items);
request.setQueryNode(nodeName);
@@ -327,7 +327,7 @@ QFuture<QXmppPubSubManager::PublishItemsResult> QXmppPubSubManager::publishItems
const QVector<T> &items,
const QXmppPubSubPublishOptions &publishOptions)
{
- QXmppPubSubIq<T> request;
+ QXmpp::Private::PubSubIq<T> request;
request.setTo(jid);
request.setItems(items);
request.setQueryNode(nodeName);