Skip to content

Commit

Permalink
issue warning to message log when active iterator is closed when repl…
Browse files Browse the repository at this point in the history
…aced
  • Loading branch information
jef-n committed Mar 23, 2013
1 parent e988b35 commit ec07a0c
Show file tree
Hide file tree
Showing 8 changed files with 28 additions and 1 deletion.
Expand Up @@ -17,6 +17,7 @@
#include "qgsdelimitedtextprovider.h"

#include "qgsgeometry.h"
#include "qgsmessagelog.h"

#include <QTextStream>

Expand All @@ -25,7 +26,10 @@ QgsDelimitedTextFeatureIterator::QgsDelimitedTextFeatureIterator( QgsDelimitedTe
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "Delimited text" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

rewind();
Expand Down
4 changes: 4 additions & 0 deletions src/providers/gpx/qgsgpxfeatureiterator.cpp
Expand Up @@ -19,6 +19,7 @@
#include "qgsapplication.h"
#include "qgsgeometry.h"
#include "qgslogger.h"
#include "qgsmessagelog.h"

#include <limits>
#include <cstring>
Expand All @@ -29,7 +30,10 @@ QgsGPXFeatureIterator::QgsGPXFeatureIterator( QgsGPXProvider* p, const QgsFeatur
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "GPX" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

rewind();
Expand Down
3 changes: 3 additions & 0 deletions src/providers/grass/qgsgrassfeatureiterator.cpp
Expand Up @@ -37,7 +37,10 @@ QgsGrassFeatureIterator::QgsGrassFeatureIterator( QgsGrassProvider* p, const Qgs
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( tr( "Already active iterator on this provider was closed." ), tr( "GRASS" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

// check if outdated and update if necessary
Expand Down
4 changes: 4 additions & 0 deletions src/providers/memory/qgsmemoryfeatureiterator.cpp
Expand Up @@ -18,14 +18,18 @@
#include "qgsgeometry.h"
#include "qgslogger.h"
#include "qgsspatialindex.h"
#include "qgsmessagelog.h"


QgsMemoryFeatureIterator::QgsMemoryFeatureIterator( QgsMemoryProvider* p, const QgsFeatureRequest& request )
: QgsAbstractFeatureIterator( request ), P( p ), mSelectRectGeom( NULL )
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "Memory provider" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

if ( mRequest.filterType() == QgsFeatureRequest::FilterRect && mRequest.flags() & QgsFeatureRequest::ExactIntersect )
Expand Down
6 changes: 5 additions & 1 deletion src/providers/ogr/qgsogrfeatureiterator.cpp
Expand Up @@ -17,8 +17,9 @@
#include "qgsogrprovider.h"

#include "qgsapplication.h"
#include "qgslogger.h"
#include "qgsgeometry.h"
#include "qgslogger.h"
#include "qgsmessagelog.h"

#include <QTextCodec>

Expand All @@ -35,7 +36,10 @@ QgsOgrFeatureIterator::QgsOgrFeatureIterator( QgsOgrProvider* p, const QgsFeatur
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "OGR" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

mFeatureFetched = false;
Expand Down
3 changes: 3 additions & 0 deletions src/providers/postgres/qgspostgresfeatureiterator.cpp
Expand Up @@ -49,7 +49,10 @@ QgsPostgresFeatureIterator::QgsPostgresFeatureIterator( QgsPostgresProvider* p,
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "PostgreSQL" ) );
P->mActiveIterator->close();
}

mCursorName = QString( "qgisf%1" ).arg( P->mProviderId );

Expand Down
3 changes: 3 additions & 0 deletions src/providers/spatialite/qgsspatialitefeatureiterator.cpp
Expand Up @@ -44,7 +44,10 @@ QgsSpatiaLiteFeatureIterator::QgsSpatiaLiteFeatureIterator( QgsSpatiaLiteProvide
{
// make sure that only one iterator is active
if ( P->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "SpatiaLite" ) );
P->mActiveIterator->close();
}
P->mActiveIterator = this;

QString whereClause;
Expand Down
2 changes: 2 additions & 0 deletions src/providers/wfs/qgswfsfeatureiterator.cpp
Expand Up @@ -15,6 +15,7 @@
#include "qgswfsfeatureiterator.h"
#include "qgsspatialindex.h"
#include "qgswfsprovider.h"
#include "qgsmessagelog.h"

QgsWFSFeatureIterator::QgsWFSFeatureIterator( QgsWFSProvider* provider, const QgsFeatureRequest& request ):
QgsAbstractFeatureIterator( request ), mProvider( provider )
Expand All @@ -28,6 +29,7 @@ QgsWFSFeatureIterator::QgsWFSFeatureIterator( QgsWFSProvider* provider, const Qg

if ( mProvider->mActiveIterator )
{
QgsMessageLog::logMessage( QObject::tr( "Already active iterator on this provider was closed." ), QObject::tr( "WFS" ) );
mProvider->mActiveIterator->close();
}
mProvider->mActiveIterator = this;
Expand Down

0 comments on commit ec07a0c

Please sign in to comment.