Skip to content

Commit

Permalink
fix cache read on wfs request
Browse files Browse the repository at this point in the history
  • Loading branch information
troopa81 committed Nov 12, 2019
1 parent 461d2ed commit 3b41677
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
12 changes: 9 additions & 3 deletions src/providers/wfs/qgsbasenetworkrequest.cpp
Expand Up @@ -174,6 +174,7 @@ bool QgsBaseNetworkRequest::sendGET( const QUrl &url, const QString &acceptHeade
// * or the owner thread of mReply is currently not doing anything because it's blocked in future.waitForFinished() (if it is the main thread)
connect( mReply, &QNetworkReply::finished, this, &QgsBaseNetworkRequest::replyFinished, Qt::DirectConnection );
connect( mReply, &QNetworkReply::downloadProgress, this, &QgsBaseNetworkRequest::replyProgress, Qt::DirectConnection );
connect( mReply, &QNetworkReply::readyRead, this, &QgsBaseNetworkRequest::replyReadyRead, Qt::DirectConnection );

if ( synchronous )
{
Expand Down Expand Up @@ -288,6 +289,7 @@ bool QgsBaseNetworkRequest::sendPOST( const QUrl &url, const QString &contentTyp
}
connect( mReply, &QNetworkReply::finished, this, &QgsBaseNetworkRequest::replyFinished );
connect( mReply, &QNetworkReply::downloadProgress, this, &QgsBaseNetworkRequest::replyProgress );
connect( mReply, &QNetworkReply::readyRead, this, &QgsBaseNetworkRequest::replyReadyRead );

QEventLoop loop;
connect( this, &QgsBaseNetworkRequest::downloadFinished, &loop, &QEventLoop::quit );
Expand All @@ -306,13 +308,15 @@ void QgsBaseNetworkRequest::abort()
}
}

void QgsBaseNetworkRequest::replyReadyRead( )
{
mGotNonEmptyResponse = true;
}

void QgsBaseNetworkRequest::replyProgress( qint64 bytesReceived, qint64 bytesTotal )
{
QgsDebugMsgLevel( QStringLiteral( "%1 of %2 bytes downloaded." ).arg( bytesReceived ).arg( bytesTotal < 0 ? QStringLiteral( "unknown number of" ) : QString::number( bytesTotal ) ), 4 );

if ( bytesReceived != 0 )
mGotNonEmptyResponse = true;

if ( !mIsAborted && mReply )
{
if ( mReply->error() == QNetworkReply::NoError )
Expand Down Expand Up @@ -381,6 +385,7 @@ void QgsBaseNetworkRequest::replyFinished()
}
connect( mReply, &QNetworkReply::finished, this, &QgsBaseNetworkRequest::replyFinished, Qt::DirectConnection );
connect( mReply, &QNetworkReply::downloadProgress, this, &QgsBaseNetworkRequest::replyProgress, Qt::DirectConnection );
connect( mReply, &QNetworkReply::readyRead, this, &QgsBaseNetworkRequest::replyReadyRead, Qt::DirectConnection );
return;
}
}
Expand All @@ -390,6 +395,7 @@ void QgsBaseNetworkRequest::replyFinished()

if ( nam->cache() )
{
QgsDebugMsgLevel( QStringLiteral( "request url:%1" ).arg( mReply->request().url().toString() ), 4 );
QNetworkCacheMetaData cmd = nam->cache()->metaData( mReply->request().url() );

QNetworkCacheMetaData::RawHeaderList hl;
Expand Down
1 change: 1 addition & 0 deletions src/providers/wfs/qgsbasenetworkrequest.h
Expand Up @@ -73,6 +73,7 @@ class QgsBaseNetworkRequest : public QObject
protected slots:
void replyProgress( qint64, qint64 );
void replyFinished();
void replyReadyRead();
void requestTimedOut( QNetworkReply *reply );

protected:
Expand Down

0 comments on commit 3b41677

Please sign in to comment.