mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-14 00:07:35 -04:00
Flush capabilities cache when flushing project layers
Made by @dmarteau
This commit is contained in:
parent
bf53e4ca0b
commit
7dcb9ccc6e
@ -61,6 +61,12 @@ void QgsCapabilitiesCache::insertCapabilitiesDocument( const QString& configFile
|
||||
mCachedCapabilities[ configFilePath ].insert( key, doc->cloneNode().toDocument() );
|
||||
}
|
||||
|
||||
void QgsCapabilitiesCache::removeCapabilitiesDocument( const QString& path )
|
||||
{
|
||||
mCachedCapabilities.remove( path );
|
||||
mFileSystemWatcher.removePath( path );
|
||||
}
|
||||
|
||||
void QgsCapabilitiesCache::removeChangedEntry( const QString& path )
|
||||
{
|
||||
QgsDebugMsg( "Remove capabilities cache entry because file changed" );
|
||||
|
@ -44,6 +44,11 @@ class SERVER_EXPORT QgsCapabilitiesCache : public QObject
|
||||
*/
|
||||
void insertCapabilitiesDocument( const QString& configFilePath, const QString& key, const QDomDocument* doc );
|
||||
|
||||
/** Remove capabilities document
|
||||
* @param configFilePath the project file path
|
||||
*/
|
||||
void removeCapabilitiesDocument( const QString& path );
|
||||
|
||||
private:
|
||||
QHash< QString, QHash< QString, QDomDocument > > mCachedCapabilities;
|
||||
QFileSystemWatcher mFileSystemWatcher;
|
||||
|
@ -77,6 +77,10 @@ void QgsServerInterfaceImpl::registerAccessControl( QgsAccessControlFilter* acce
|
||||
|
||||
void QgsServerInterfaceImpl::removeConfigCacheEntry( const QString& path )
|
||||
{
|
||||
if( mCapabilitiesCache )
|
||||
{
|
||||
mCapabilitiesCache->removeCapabilitiesDocument( path );
|
||||
}
|
||||
QgsConfigCache::instance()->removeEntry( path );
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user