[processing] drop GEOM_TYPE_MAP in favour of QgsWkbTypes.displayString()

This commit is contained in:
Alexander Bruy 2016-10-05 09:45:55 +03:00
parent 7a49612a60
commit eeb8269464

View File

@ -52,23 +52,6 @@ from processing.core.GeoAlgorithmExecutionException import GeoAlgorithmExecution
from processing.tools import dataobjects, spatialite, postgis from processing.tools import dataobjects, spatialite, postgis
GEOM_TYPE_MAP = {
QgsWkbTypes.NullGeometry: 'none',
QgsWkbTypes.Point: 'Point',
QgsWkbTypes.LineString: 'LineString',
QgsWkbTypes.Polygon: 'Polygon',
QgsWkbTypes.MultiPoint: 'MultiPoint',
QgsWkbTypes.MultiLineString: 'MultiLineString',
QgsWkbTypes.MultiPolygon: 'MultiPolygon',
QgsWkbTypes.Point25D: 'Point25D',
QgsWkbTypes.LineString25D: 'LineString25D',
QgsWkbTypes.Polygon25D: 'Polygon25D',
QgsWkbTypes.MultiPoint25D: 'MultiPoint25D',
QgsWkbTypes.MultiLineString25D: 'MultiLineString25D',
QgsWkbTypes.MultiPolygon25D: 'MultiPolygon25D',
}
TYPE_MAP = { TYPE_MAP = {
str: QVariant.String, str: QVariant.String,
float: QVariant.Double, float: QVariant.Double,
@ -567,7 +550,7 @@ class VectorWriter(object):
if self.destination.startswith(self.MEMORY_LAYER_PREFIX): if self.destination.startswith(self.MEMORY_LAYER_PREFIX):
self.isNotFileBased = True self.isNotFileBased = True
uri = GEOM_TYPE_MAP[geometryType] + "?uuid=" + str(uuid.uuid4()) uri = QgsWkbTypes.displayString(geometryType) + "?uuid=" + str(uuid.uuid4())
if crs.isValid(): if crs.isValid():
uri += '&crs=' + crs.authid() uri += '&crs=' + crs.authid()
fieldsdesc = [] fieldsdesc = []
@ -614,7 +597,7 @@ class VectorWriter(object):
if geometryType != QgsWkbTypes.NullGeometry: if geometryType != QgsWkbTypes.NullGeometry:
_runSQL("SELECT AddGeometryColumn('{schema}', '{table}', 'the_geom', {srid}, '{typmod}', 2)".format( _runSQL("SELECT AddGeometryColumn('{schema}', '{table}', 'the_geom', {srid}, '{typmod}', 2)".format(
table=uri.table().lower(), schema=uri.schema(), srid=crs.authid().split(":")[-1], table=uri.table().lower(), schema=uri.schema(), srid=crs.authid().split(":")[-1],
typmod=GEOM_TYPE_MAP[geometryType].upper())) typmod=QgsWkbTypes.displayString(geometryType).upper()))
self.layer = QgsVectorLayer(uri.uri(), uri.table(), "postgres") self.layer = QgsVectorLayer(uri.uri(), uri.table(), "postgres")
self.writer = self.layer.dataProvider() self.writer = self.layer.dataProvider()
@ -646,7 +629,7 @@ class VectorWriter(object):
if geometryType != QgsWkbTypes.NullGeometry: if geometryType != QgsWkbTypes.NullGeometry:
_runSQL("SELECT AddGeometryColumn('{table}', 'the_geom', {srid}, '{typmod}', 2)".format( _runSQL("SELECT AddGeometryColumn('{table}', 'the_geom', {srid}, '{typmod}', 2)".format(
table=uri.table().lower(), srid=crs.authid().split(":")[-1], table=uri.table().lower(), srid=crs.authid().split(":")[-1],
typmod=GEOM_TYPE_MAP[geometryType].upper())) typmod=QgsWkbTypes.displayString(geometryType).upper()))
self.layer = QgsVectorLayer(uri.uri(), uri.table(), "spatialite") self.layer = QgsVectorLayer(uri.uri(), uri.table(), "spatialite")
self.writer = self.layer.dataProvider() self.writer = self.layer.dataProvider()