QGIS API Documentation 3.27.0-Master (f261cc1f8b)
qgsnetworkcontentfetcher.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsnetworkcontentfetcher.h
3 -------------------
4 begin : July, 2014
5 copyright : (C) 2014 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7
8 ***************************************************************************/
9
10/***************************************************************************
11 * *
12 * This program is free software; you can redistribute it and/or modify *
13 * it under the terms of the GNU General Public License as published by *
14 * the Free Software Foundation; either version 2 of the License, or *
15 * (at your option) any later version. *
16 * *
17 ***************************************************************************/
18
19
20#ifndef QGSNETWORKCONTENTFETCHER_H
21#define QGSNETWORKCONTENTFETCHER_H
22
23#include <QNetworkReply>
24#include <QUrl>
25
26#include "qgis_core.h"
27
28class QTextCodec;
29
39class CORE_EXPORT QgsNetworkContentFetcher : public QObject
40{
41 Q_OBJECT
42
43 public:
44
49
51
58 void fetchContent( const QUrl &url, const QString &authcfg = QString() );
59
68 void fetchContent( const QNetworkRequest &request, const QString &authcfg = QString() );
69
74 QNetworkReply *reply();
75
81 QString contentDispositionFilename() const;
82
87 QString contentAsString() const;
88
93 void cancel();
94
100 bool wasCanceled() const;
101
102 signals:
103
107 void finished();
108
113 void downloadProgress( qint64 bytesReceived, qint64 bytesTotal );
114
120 void errorOccurred( QNetworkReply::NetworkError code, const QString &errorMsg );
121
122 private:
123
124 QString mAuthCfg;
125 QNetworkReply *mReply = nullptr;
126
127 bool mContentLoaded = false;
128
129 bool mIsCanceled = false;
130
136 QTextCodec *codecForHtml( QByteArray &array ) const;
137
138 private slots:
139
144 void contentLoaded( bool ok = true );
145
146};
147
148#endif
HTTP network content fetcher.
QgsNetworkContentFetcher()=default
Constructor for QgsNetworkContentFetcher.
void finished()
Emitted when content has loaded.
void errorOccurred(QNetworkReply::NetworkError code, const QString &errorMsg)
Emitted when an error with code error occurred while processing the request errorMsg is a textual des...
void downloadProgress(qint64 bytesReceived, qint64 bytesTotal)
Emitted when data is received.