From 5cce6f583e1691ea98ac7c13ebbef8103f578404 Mon Sep 17 00:00:00 2001 From: Jeremy Lainé Date: Tue, 25 Aug 2015 11:23:27 +0200 Subject: add a QXmppIceTransport base class --- src/base/QXmppStun.cpp | 10 +++++++++- src/base/QXmppStun_p.h | 20 ++++++++++++++++---- 2 files changed, 25 insertions(+), 5 deletions(-) (limited to 'src/base') diff --git a/src/base/QXmppStun.cpp b/src/base/QXmppStun.cpp index 30fa1786..14c9b76a 100644 --- a/src/base/QXmppStun.cpp +++ b/src/base/QXmppStun.cpp @@ -1157,7 +1157,7 @@ void QXmppStunTransaction::retry() /// \param parent QXmppTurnAllocation::QXmppTurnAllocation(QObject *parent) - : QXmppLoggable(parent), + : QXmppIceTransport(parent), m_relayedPort(0), m_turnPort(0), m_channelNumber(0x4000), @@ -2776,3 +2776,11 @@ void QXmppIceConnection::slotTimeout() emit disconnected(); } +QXmppIceTransport::QXmppIceTransport(QObject *parent) + : QXmppLoggable(parent) +{ +} + +QXmppIceTransport::~QXmppIceTransport() +{ +} diff --git a/src/base/QXmppStun_p.h b/src/base/QXmppStun_p.h index 76801ade..e8e13019 100644 --- a/src/base/QXmppStun_p.h +++ b/src/base/QXmppStun_p.h @@ -72,13 +72,28 @@ private: int m_tries; }; +class QXMPP_EXPORT QXmppIceTransport : public QXmppLoggable +{ + Q_OBJECT + +public: + QXmppIceTransport(QObject *parent = 0); + ~QXmppIceTransport(); + + virtual qint64 writeDatagram(const QByteArray &data, const QHostAddress &host, quint16 port) = 0; + +signals: + /// \brief This signal is emitted when a data packet is received. + void datagramReceived(const QByteArray &data, const QHostAddress &host, quint16 port); +}; + /// \internal /// /// The QXmppTurnAllocation class represents a TURN allocation as defined /// by RFC 5766 Traversal Using Relays around NAT (TURN). /// -class QXMPP_EXPORT QXmppTurnAllocation : public QXmppLoggable +class QXMPP_EXPORT QXmppTurnAllocation : public QXmppIceTransport { Q_OBJECT @@ -108,9 +123,6 @@ signals: /// \brief This signal is emitted once TURN allocation succeeds. void connected(); - /// \brief This signal is emitted when a data packet is received. - void datagramReceived(const QByteArray &data, const QHostAddress &host, quint16 port); - /// \brief This signal is emitted when TURN allocation fails. void disconnected(); -- cgit v1.2.3