Skip to content

Commit 7dcb9cc

Browse files
committedJun 28, 2016
Flush capabilities cache when flushing project layers
Made by @dmarteau
1 parent bf53e4c commit 7dcb9cc

File tree

3 files changed

+15
-0
lines changed

3 files changed

+15
-0
lines changed
 

‎src/server/qgscapabilitiescache.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,12 @@ void QgsCapabilitiesCache::insertCapabilitiesDocument( const QString& configFile
6161
mCachedCapabilities[ configFilePath ].insert( key, doc->cloneNode().toDocument() );
6262
}
6363

64+
void QgsCapabilitiesCache::removeCapabilitiesDocument( const QString& path )
65+
{
66+
mCachedCapabilities.remove( path );
67+
mFileSystemWatcher.removePath( path );
68+
}
69+
6470
void QgsCapabilitiesCache::removeChangedEntry( const QString& path )
6571
{
6672
QgsDebugMsg( "Remove capabilities cache entry because file changed" );

‎src/server/qgscapabilitiescache.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ class SERVER_EXPORT QgsCapabilitiesCache : public QObject
4444
*/
4545
void insertCapabilitiesDocument( const QString& configFilePath, const QString& key, const QDomDocument* doc );
4646

47+
/** Remove capabilities document
48+
* @param configFilePath the project file path
49+
*/
50+
void removeCapabilitiesDocument( const QString& path );
51+
4752
private:
4853
QHash< QString, QHash< QString, QDomDocument > > mCachedCapabilities;
4954
QFileSystemWatcher mFileSystemWatcher;

‎src/server/qgsserverinterfaceimpl.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,10 @@ void QgsServerInterfaceImpl::registerAccessControl( QgsAccessControlFilter* acce
7777

7878
void QgsServerInterfaceImpl::removeConfigCacheEntry( const QString& path )
7979
{
80+
if( mCapabilitiesCache )
81+
{
82+
mCapabilitiesCache->removeCapabilitiesDocument( path );
83+
}
8084
QgsConfigCache::instance()->removeEntry( path );
8185
}
8286

0 commit comments

Comments
 (0)
Please sign in to comment.