Skip to content

Commit

Permalink
[Server] Enhance WFS mapLayerFromTypeName
Browse files Browse the repository at this point in the history
  • Loading branch information
rldhont committed Mar 20, 2017
1 parent b15d9e4 commit 1ec067e
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions src/server/qgswfsprojectparser.cpp
Expand Up @@ -564,18 +564,24 @@ QList<QgsMapLayer*> QgsWFSProjectParser::mapLayerFromTypeName( const QString& aT
QString type = elem.attribute( "type" ); QString type = elem.attribute( "type" );
if ( type == "vector" ) if ( type == "vector" )
{ {
QString id = mProjectParser->layerId( elem );
if ( !wfsLayersId.contains( id ) )
continue;

QString typeName = mProjectParser->layerShortName( elem );
if ( typeName.isEmpty() )
typeName = mProjectParser->layerName( elem );
typeName = typeName.replace( " ", "_" );

if ( !aTypeName.isEmpty() && !typeNameList.contains( typeName ) )
continue;

QgsMapLayer *mLayer = mProjectParser->createLayerFromElement( elem ); QgsMapLayer *mLayer = mProjectParser->createLayerFromElement( elem );
QgsVectorLayer* layer = qobject_cast<QgsVectorLayer*>( mLayer ); QgsVectorLayer* layer = qobject_cast<QgsVectorLayer*>( mLayer );
if ( !layer ) if ( !layer )
continue; continue;


QString typeName = layer->name(); layerList.push_back( mLayer );
if ( !layer->shortName().isEmpty() )
typeName = layer->shortName();
typeName = typeName.replace( " ", "_" );

if ( wfsLayersId.contains( layer->id() ) && ( aTypeName == "" || typeNameList.contains( typeName ) ) )
layerList.push_back( mLayer );
} }
} }
return layerList; return layerList;
Expand Down

0 comments on commit 1ec067e

Please sign in to comment.