Class: QgsServerCacheManager

class qgis.server.QgsServerCacheManager

Bases: sip.wrapper

A helper class that centralizes caches accesses given by all the server cache filter plugins.

New in version 3.4.

QgsServerCacheManager(settings: QgsServerSettings = QgsServerSettings()) Constructor

QgsServerCacheManager(copy: QgsServerCacheManager) Copy constructor

Methods

deleteCachedDocument

Deletes the cached document

deleteCachedDocuments

Deletes all cached documents for a QGIS project

deleteCachedImage

Deletes the cached image

deleteCachedImages

Deletes all cached images for a QGIS project

getCachedDocument

Returns cached document (or 0 if document not in cache) like capabilities

getCachedImage

Returns cached image (or 0 if image not in cache) like tiles

registerServerCache

Register a server cache filter

setCachedDocument

Updates or inserts the document in cache like capabilities

setCachedImage

Updates or inserts the image in cache like tiles

deleteCachedDocument(self, project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) bool

Deletes the cached document

Parameters
  • project (QgsProject) – the project used to generate the document to provide path

  • request (QgsServerRequest) – the request used to generate the document to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

bool

Returns

True if the document has been deleted

deleteCachedDocuments(self, project: QgsProject) bool

Deletes all cached documents for a QGIS project

Parameters

project (QgsProject) – the project used to generate the document to provide path

Return type

bool

Returns

True if the document has been deleted

deleteCachedImage(self, project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) bool

Deletes the cached image

Parameters
  • project (QgsProject) – the project used to generate the image to provide path

  • request (QgsServerRequest) – the request used to generate the image to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

bool

Returns

True if the image has been deleted

deleteCachedImages(self, project: QgsProject) bool

Deletes all cached images for a QGIS project

Parameters

project (QgsProject) – the project used to generate the images to provide path

Return type

bool

Returns

True if the images have been deleted

getCachedDocument(self, doc: QDomDocument, project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) bool

Returns cached document (or 0 if document not in cache) like capabilities

Parameters
  • doc (QDomDocument) – the document to update by content found in cache

  • project (QgsProject) – the project used to generate the document to provide path

  • request (QgsServerRequest) – the request used to generate the document to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

bool

Returns

True if the document has been found in cache and the document’s content set

getCachedImage(self, project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) QByteArray

Returns cached image (or 0 if image not in cache) like tiles

Parameters
  • project (QgsProject) – the project used to generate the image to provide path

  • request (QgsServerRequest) – the request used to generate the image to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

QByteArray

Returns

the cached image or 0 if no corresponding image found

registerServerCache(self, serverCache: QgsServerCacheFilter, priority: int = 0)

Register a server cache filter

Parameters
  • serverCache (QgsServerCacheFilter) – the server cache to add

  • priority (int = 0) – the priority used to define the order

setCachedDocument(self, doc: QDomDocument, project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) bool

Updates or inserts the document in cache like capabilities

Parameters
  • doc (QDomDocument) – the document to cache

  • project (QgsProject) – the project used to generate the document to provide path

  • request (QgsServerRequest) – the request used to generate the document to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

bool

Returns

True if the document has been cached

setCachedImage(self, img: Union[QByteArray, bytes, bytearray], project: QgsProject, request: QgsServerRequest, accessControl: QgsAccessControl) bool

Updates or inserts the image in cache like tiles

Parameters
  • img (Union[QByteArray) – the image to cache

  • project (QgsProject) – the project used to generate the image to provide path

  • request (QgsServerRequest) – the request used to generate the image to provider parameters or data

  • accessControl (QgsAccessControl) – the access control to identify different documents for the same request provided by server interface

Return type

bool

Returns

True if the image has been cached