QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
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
38class CORE_EXPORT QgsNetworkContentFetcher : public QObject
39{
40 Q_OBJECT
41
42 public:
43
48
50
57 void fetchContent( const QUrl &url, const QString &authcfg = QString() );
58
67 void fetchContent( const QNetworkRequest &request, const QString &authcfg = QString() );
68
73 QNetworkReply *reply();
74
80 QString contentDispositionFilename() const;
81
86 QString contentAsString() const;
87
92 void cancel();
93
99 bool wasCanceled() const;
100
101 signals:
102
106 void finished();
107
112 void downloadProgress( qint64 bytesReceived, qint64 bytesTotal );
113
119 void errorOccurred( QNetworkReply::NetworkError code, const QString &errorMsg );
120
121 private:
122
123 QString mAuthCfg;
124 QNetworkReply *mReply = nullptr;
125
126 bool mContentLoaded = false;
127
128 bool mIsCanceled = false;
129
135 QTextCodec *codecForHtml( QByteArray &array ) const;
136
137 private slots:
138
143 void contentLoaded( bool ok = true );
144
145};
146
147#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.