aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/base/QXmppError.cpp10
-rw-r--r--src/base/QXmppError.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/src/base/QXmppError.cpp b/src/base/QXmppError.cpp
index eab4c749..bd894c10 100644
--- a/src/base/QXmppError.cpp
+++ b/src/base/QXmppError.cpp
@@ -46,6 +46,16 @@ QXmppError QXmppError::fromIoDevice(const QIODevice &device)
}
///
+/// \brief Constructs a QXmppError from a QNetworkReply
+///
+/// It creates a QXmppError with the error string and network error from the reply.
+///
+QXmppError QXmppError::fromNetworkReply(const QNetworkReply &reply)
+{
+ return { reply.errorString(), reply.error() };
+}
+
+///
/// Returns whether the error is a QNetworkReply::NetworkError.
///
bool QXmppError::isFileError() const
diff --git a/src/base/QXmppError.h b/src/base/QXmppError.h
index 677ce415..65dc4308 100644
--- a/src/base/QXmppError.h
+++ b/src/base/QXmppError.h
@@ -11,6 +11,7 @@
#include <optional>
class QIODevice;
+class QNetworkReply;
struct QXMPP_EXPORT QXmppError
{
@@ -18,6 +19,7 @@ struct QXMPP_EXPORT QXmppError
std::any error;
static QXmppError fromIoDevice(const QIODevice &device);
+ static QXmppError fromNetworkReply(const QNetworkReply &reply);
bool isFileError() const;
bool isNetworkError() const;