Class: QgsVectorLayerExporterTask

class qgis.core.QgsVectorLayerExporterTask

Bases: QgsTask

QgsTask task which performs a QgsVectorLayerExporter layer export operation as a background task. This can be used to export a vector layer out to a provider without blocking the QGIS interface.

New in version 3.0.

QgsVectorLayerExporterTask(layer: QgsVectorLayer, uri: str, providerKey: str, destinationCrs: QgsCoordinateReferenceSystem, options: Dict[str, Any] = {}, ownsLayer: bool = False) Constructor for QgsVectorLayerExporterTask. Takes a source layer, destination uri and providerKey, and various export related parameters such as destination CRS and export options. ownsLayer has to be set to True if the task should take ownership of the layer and delete it after export.

Methods

cancel

childEvent

connectNotify

customEvent

disconnectNotify

finished

param result

isCanceled

Will return True if task should terminate ASAP.

isSignalConnected

receivers

run

rtype

bool

sender

senderSignalIndex

setProgress

Sets the task’s current progress.

timerEvent

withLayerOwnership

Creates a new QgsVectorLayerExporterTask which has ownership over a source layer.

Signals

errorOccurred

Emitted when an error occurs which prevented the layer being exported (or if the task is canceled).

exportComplete

Emitted when exporting the layer is successfully completed.

cancel(self)
childEvent(self, QChildEvent)
connectNotify(self, QMetaMethod)
customEvent(self, QEvent)
disconnectNotify(self, QMetaMethod)
errorOccurred

Emitted when an error occurs which prevented the layer being exported (or if the task is canceled). The export error and errorMessage will be reported. [signal]

Parameters
  • error (int) –

  • errorMessage (str) –

exportComplete

Emitted when exporting the layer is successfully completed. [signal]

finished(self, result: bool)
Parameters

result (bool) –

isCanceled(self)bool

Will return True if task should terminate ASAP. If the task reports the CanCancel flag, then derived classes’ run() methods should periodically check this and terminate in a safe manner.

isSignalConnected(self, QMetaMethod)bool
receivers(self, PYQT_SIGNAL)int
run(self)bool
Return type

bool

sender(self)QObject
senderSignalIndex(self)int
setProgress(self, progress: float)

Sets the task’s current progress. The derived class should call this method whenever the task wants to update its progress. Calling will automatically emit the progressChanged signal.

Parameters

progress – percent of progress, from 0.0 - 100.0

timerEvent(self, QTimerEvent)
withLayerOwnership(layer: QgsVectorLayer, uri: str, providerKey: str, destinationCrs: QgsCoordinateReferenceSystem, options: Dict[str, Any] = {})QgsVectorLayerExporterTask

Creates a new QgsVectorLayerExporterTask which has ownership over a source layer. When the export task has completed (successfully or otherwise) layer will be deleted. The destination uri and providerKey, and various export related parameters such as destination CRS and export options must be specified.

Parameters
Return type

QgsVectorLayerExporterTask