aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppStream.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/base/QXmppStream.h')
-rw-r--r--src/base/QXmppStream.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/base/QXmppStream.h b/src/base/QXmppStream.h
index 3411e2e9..c0ac1807 100644
--- a/src/base/QXmppStream.h
+++ b/src/base/QXmppStream.h
@@ -74,6 +74,30 @@ protected:
/// \param element
virtual void handleStream(const QDomElement &element) = 0;
+ /// Enables Stream Management acks / reqs (XEP-0198).
+ ///
+ /// \param resetSeqno Indicates if the sequence numbers should be resetted.
+ /// This must be done iff the stream is not resumed.
+ void enableStreamManagement(bool resetSequenceNumber);
+
+ /// Returns the sequence number of the last incoming stanza (XEP-0198).
+ unsigned lastIncomingSequenceNumber() const;
+
+ /// Sets the last acknowledged sequence number for outgoing stanzas (XEP-0198).
+ void setAcknowledgedSequenceNumber(unsigned sequenceNumber);
+
+private:
+ /// Handles an incoming acknowledgement from XEP-0198.
+ ///
+ /// \param element
+ void handleAcknowledgement(QDomElement &element);
+
+ /// Sends an acknowledgement as defined in XEP-0198.
+ void sendAcknowledgement();
+
+ /// Sends an acknowledgement request as defined in XEP-0198.
+ void sendAcknowledgementRequest();
+
public slots:
virtual void disconnectFromHost();
virtual bool sendData(const QByteArray&);