QXmpp Version: 1.12.0
Loading...
Searching...
No Matches
QXmppClient_p.h
1// SPDX-FileCopyrightText: 2020 Manjeet Dahiya <manjeetdahiya@gmail.com>
2// SPDX-FileCopyrightText: 2020 Linus Jahn <lnj@kaidan.im>
3// SPDX-FileCopyrightText: 2023 Melvin Keskin <melvo@olomono.de>
4//
5// SPDX-License-Identifier: LGPL-2.1-or-later
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the QXmpp API.
12//
13// This header file may change from version to version without notice,
14// or even be removed.
15//
16// We mean it.
17//
18
19#ifndef QXMPPCLIENT_P_H
20#define QXMPPCLIENT_P_H
21
22#include "QXmppOutgoingClient.h"
23#include "QXmppPresence.h"
24
25#include <chrono>
26
27class QXmppClient;
30class QXmppLogger;
31class QTimer;
32
33class QXmppClientPrivate
34{
35public:
36 QXmppClientPrivate(QXmppClient *qq);
37
38 void resendPresence();
39
41 QXmppPresence clientPresence;
42 QList<QXmppClientExtension *> extensions;
43 QXmppLogger *logger;
45 QXmppOutgoingClient *stream;
46 QVector<QXmpp::StreamError> ignoredStreamErrors;
47
48 QXmppE2eeExtension *encryptionExtension;
49
50 // reconnection
51 bool receivedConflict;
52 int reconnectionTries;
53 QTimer *reconnectionTimer;
54
55 void addProperCapability(QXmppPresence &presence);
56 std::chrono::milliseconds getNextReconnectTime() const;
57
58 static QStringList discoveryFeatures();
59 void onErrorOccurred(const QString &text, const QXmppOutgoingClient::ConnectionError &err, QXmppClient::Error oldError);
60
61private:
62 QXmppClient *q;
63};
64
65#endif // QXMPPCLIENT_P_H
The QXmppClientExtension class is the base class for QXmppClient extensions.
Definition QXmppClientExtension.h:32
Main class for starting and managing connections to XMPP servers.
Definition QXmppClient.h:62
Error
Definition QXmppClient.h:76
Definition QXmppE2eeExtension.h:23
The QXmppLogger class represents a sink for logging messages.
Definition QXmppLogger.h:29
The QXmppPresence class represents an XMPP presence stanza.
Definition QXmppPresence.h:22