File tree Expand file tree Collapse file tree 2 files changed +19
-0
lines changed
python/plugins/processing Expand file tree Collapse file tree 2 files changed +19
-0
lines changed Original file line number Diff line number Diff line change @@ -92,6 +92,12 @@ def linkTestfile(f, t):
92
92
name = vector .ogrLayerName (tmpdir + '|layername=f2|layerid=0' )
93
93
self .assertEqual (name , 'f2' ) # layername takes precedence
94
94
95
+ name = vector .ogrLayerName ('dbname=\' /tmp/x.sqlite\' table="t" (geometry) sql=' )
96
+ self .assertEqual (name , 't' )
97
+
98
+ name = vector .ogrLayerName ('dbname=\' /tmp/x.sqlite\' table="s.t" (geometry) sql=' )
99
+ self .assertEqual (name , 's.t' )
100
+
95
101
def testFeatures (self ):
96
102
ProcessingConfig .initialize ()
97
103
Original file line number Diff line number Diff line change @@ -511,6 +511,19 @@ def ogrConnectionString(uri):
511
511
512
512
513
513
def ogrLayerName (uri ):
514
+ if 'host' in uri :
515
+ regex = re .compile ('table="(.+?)\.(.+?)"' )
516
+ r = regex .search (uri )
517
+ return '"' + r .groups ()[0 ] + '.' + r .groups ()[1 ] + '"'
518
+ elif 'dbname' in uri :
519
+ regex = re .compile ('table="(.+?)"' )
520
+ r = regex .search (uri )
521
+ return r .groups ()[0 ]
522
+ elif 'layername' in uri :
523
+ regex = re .compile ('(layername=)([^|]*)' )
524
+ r = regex .search (uri )
525
+ return r .groups ()[1 ]
526
+
514
527
fields = uri .split ('|' )
515
528
ogruri = fields [0 ]
516
529
fields = fields [1 :]
You can’t perform that action at this time.
0 commit comments