Skip to content

Commit 49eba8c

Browse files
committed
No contact information in service capabilities of wfs and wcs
1 parent 0e70646 commit 49eba8c

File tree

3 files changed

+49
-226
lines changed

3 files changed

+49
-226
lines changed

src/mapserver/qgsserverprojectparser.cpp

+49-46
Original file line numberDiff line numberDiff line change
@@ -419,60 +419,63 @@ void QgsServerProjectParser::serviceCapabilities( QDomElement& parentElement, QD
419419

420420
serviceElem.appendChild( onlineResourceElem );
421421

422-
//Contact information
423-
QDomElement contactInfoElem = doc.createElement( "ContactInformation" );
422+
if ( service.compare( "WMS", Qt::CaseInsensitive ) == 0 ) //no contact information in WFS 1.0 and WCS 1.0
423+
{
424+
//Contact information
425+
QDomElement contactInfoElem = doc.createElement( "ContactInformation" );
424426

425-
//Contact person primary
426-
QDomElement contactPersonPrimaryElem = doc.createElement( "ContactPersonPrimary" );
427+
//Contact person primary
428+
QDomElement contactPersonPrimaryElem = doc.createElement( "ContactPersonPrimary" );
427429

428-
//Contact person
429-
QDomElement contactPersonElem = propertiesElement.firstChildElement( "WMSContactPerson" );
430-
QString contactPersonString;
431-
if ( !contactPersonElem.isNull() )
432-
{
433-
contactPersonString = contactPersonElem.text();
434-
}
435-
QDomElement wmsContactPersonElem = doc.createElement( "ContactPerson" );
436-
QDomText contactPersonText = doc.createTextNode( contactPersonString );
437-
wmsContactPersonElem.appendChild( contactPersonText );
438-
contactPersonPrimaryElem.appendChild( wmsContactPersonElem );
430+
//Contact person
431+
QDomElement contactPersonElem = propertiesElement.firstChildElement( "WMSContactPerson" );
432+
QString contactPersonString;
433+
if ( !contactPersonElem.isNull() )
434+
{
435+
contactPersonString = contactPersonElem.text();
436+
}
437+
QDomElement wmsContactPersonElem = doc.createElement( "ContactPerson" );
438+
QDomText contactPersonText = doc.createTextNode( contactPersonString );
439+
wmsContactPersonElem.appendChild( contactPersonText );
440+
contactPersonPrimaryElem.appendChild( wmsContactPersonElem );
439441

440442

441-
//Contact organisation
442-
QDomElement contactOrganizationElem = propertiesElement.firstChildElement( "WMSContactOrganization" );
443-
QString contactOrganizationString;
444-
if ( !contactOrganizationElem.isNull() )
445-
{
446-
contactOrganizationString = contactOrganizationElem.text();
447-
}
448-
QDomElement wmsContactOrganizationElem = doc.createElement( "ContactOrganization" );
449-
QDomText contactOrganizationText = doc.createTextNode( contactOrganizationString );
450-
wmsContactOrganizationElem.appendChild( contactOrganizationText );
451-
contactPersonPrimaryElem.appendChild( wmsContactOrganizationElem );
452-
contactInfoElem.appendChild( contactPersonPrimaryElem );
443+
//Contact organisation
444+
QDomElement contactOrganizationElem = propertiesElement.firstChildElement( "WMSContactOrganization" );
445+
QString contactOrganizationString;
446+
if ( !contactOrganizationElem.isNull() )
447+
{
448+
contactOrganizationString = contactOrganizationElem.text();
449+
}
450+
QDomElement wmsContactOrganizationElem = doc.createElement( "ContactOrganization" );
451+
QDomText contactOrganizationText = doc.createTextNode( contactOrganizationString );
452+
wmsContactOrganizationElem.appendChild( contactOrganizationText );
453+
contactPersonPrimaryElem.appendChild( wmsContactOrganizationElem );
454+
contactInfoElem.appendChild( contactPersonPrimaryElem );
455+
456+
//phone
457+
QDomElement phoneElem = propertiesElement.firstChildElement( "WMSContactPhone" );
458+
if ( !phoneElem.isNull() )
459+
{
460+
QDomElement wmsPhoneElem = doc.createElement( "ContactVoiceTelephone" );
461+
QDomText wmsPhoneText = doc.createTextNode( phoneElem.text() );
462+
wmsPhoneElem.appendChild( wmsPhoneText );
463+
contactInfoElem.appendChild( wmsPhoneElem );
464+
}
453465

454-
//phone
455-
QDomElement phoneElem = propertiesElement.firstChildElement( "WMSContactPhone" );
456-
if ( !phoneElem.isNull() )
457-
{
458-
QDomElement wmsPhoneElem = doc.createElement( "ContactVoiceTelephone" );
459-
QDomText wmsPhoneText = doc.createTextNode( phoneElem.text() );
460-
wmsPhoneElem.appendChild( wmsPhoneText );
461-
contactInfoElem.appendChild( wmsPhoneElem );
462-
}
466+
//mail
467+
QDomElement mailElem = propertiesElement.firstChildElement( "WMSContactMail" );
468+
if ( !mailElem.isNull() )
469+
{
470+
QDomElement wmsMailElem = doc.createElement( "ContactElectronicMailAddress" );
471+
QDomText wmsMailText = doc.createTextNode( mailElem.text() );
472+
wmsMailElem.appendChild( wmsMailText );
473+
contactInfoElem.appendChild( wmsMailElem );
474+
}
463475

464-
//mail
465-
QDomElement mailElem = propertiesElement.firstChildElement( "WMSContactMail" );
466-
if ( !mailElem.isNull() )
467-
{
468-
QDomElement wmsMailElem = doc.createElement( "ContactElectronicMailAddress" );
469-
QDomText wmsMailText = doc.createTextNode( mailElem.text() );
470-
wmsMailElem.appendChild( wmsMailText );
471-
contactInfoElem.appendChild( wmsMailElem );
476+
serviceElem.appendChild( contactInfoElem );
472477
}
473478

474-
serviceElem.appendChild( contactInfoElem );
475-
476479
//Fees
477480
QDomElement feesElem = propertiesElement.firstChildElement( "WMSFees" );
478481
if ( !feesElem.isNull() )

src/mapserver/qgswcsprojectparser.cpp

-84
Original file line numberDiff line numberDiff line change
@@ -30,90 +30,6 @@ QgsWCSProjectParser::~QgsWCSProjectParser()
3030
void QgsWCSProjectParser::serviceCapabilities( QDomElement& parentElement, QDomDocument& doc ) const
3131
{
3232
mProjectParser.serviceCapabilities( parentElement, doc, "WCS" );
33-
#if 0
34-
QDomElement serviceElem = doc.createElement( "Service" );
35-
36-
QDomElement propertiesElem = mProjectParser.propertiesElem();
37-
if ( propertiesElem.isNull() )
38-
{
39-
QgsConfigParserUtils::fallbackServiceCapabilities( parentElement, doc );
40-
return;
41-
}
42-
43-
QDomElement serviceCapabilityElem = propertiesElem.firstChildElement( "WMSServiceCapabilities" );
44-
if ( serviceCapabilityElem.isNull() || serviceCapabilityElem.text().compare( "true", Qt::CaseInsensitive ) != 0 )
45-
{
46-
QgsConfigParserUtils::fallbackServiceCapabilities( parentElement, doc );
47-
return;
48-
}
49-
50-
//Service name is always WCS
51-
QDomElement wcsNameElem = doc.createElement( "name" );
52-
QDomText wcsNameText = doc.createTextNode( "WCS" );
53-
wcsNameElem.appendChild( wcsNameText );
54-
serviceElem.appendChild( wcsNameElem );
55-
56-
//WMS title
57-
QDomElement titleElem = propertiesElem.firstChildElement( "WMSServiceTitle" );
58-
if ( !titleElem.isNull() )
59-
{
60-
QDomElement wcsLabelElem = doc.createElement( "label" );
61-
QDomText wcsLabelText = doc.createTextNode( titleElem.text() );
62-
wcsLabelElem.appendChild( wcsLabelText );
63-
serviceElem.appendChild( wcsLabelElem );
64-
}
65-
66-
//WMS abstract
67-
QDomElement abstractElem = propertiesElem.firstChildElement( "WMSServiceAbstract" );
68-
if ( !abstractElem.isNull() )
69-
{
70-
QDomElement wcsDescriptionElem = doc.createElement( "description" );
71-
QDomText wcsDescriptionText = doc.createTextNode( abstractElem.text() );
72-
wcsDescriptionElem.appendChild( wcsDescriptionText );
73-
serviceElem.appendChild( wcsDescriptionElem );
74-
}
75-
76-
//keyword list
77-
QDomElement keywordListElem = propertiesElem.firstChildElement( "WMSKeywordList" );
78-
if ( !keywordListElem.isNull() && !keywordListElem.text().isEmpty() )
79-
{
80-
QDomNodeList keywordList = keywordListElem.elementsByTagName( "value" );
81-
if ( keywordList.size() > 0 )
82-
{
83-
QDomElement wcsKeywordsElem = doc.createElement( "keywords" );
84-
for ( int i = 0; i < keywordList.size(); ++i )
85-
{
86-
QDomElement wcsKeywordElem = doc.createElement( "keyword" );
87-
QDomText keywordText = doc.createTextNode( keywordList.at( i ).toElement().text() );
88-
wcsKeywordElem.appendChild( keywordText );
89-
wcsKeywordsElem.appendChild( wcsKeywordElem );
90-
}
91-
serviceElem.appendChild( wcsKeywordsElem );
92-
}
93-
}
94-
95-
//Fees
96-
QDomElement feesElem = propertiesElem.firstChildElement( "WMSFees" );
97-
if ( !feesElem.isNull() )
98-
{
99-
QDomElement wcsFeesElem = doc.createElement( "fees" );
100-
QDomText wcsFeesText = doc.createTextNode( feesElem.text() );
101-
wcsFeesElem.appendChild( wcsFeesText );
102-
serviceElem.appendChild( wcsFeesElem );
103-
}
104-
105-
//AccessConstraints
106-
QDomElement accessConstraintsElem = propertiesElem.firstChildElement( "WMSAccessConstraints" );
107-
if ( !accessConstraintsElem.isNull() )
108-
{
109-
QDomElement wcsAccessConstraintsElem = doc.createElement( "accessConstraints" );
110-
QDomText wcsAccessConstraintsText = doc.createTextNode( accessConstraintsElem.text() );
111-
wcsAccessConstraintsElem.appendChild( wcsAccessConstraintsText );
112-
serviceElem.appendChild( wcsAccessConstraintsElem );
113-
}
114-
115-
parentElement.appendChild( serviceElem );
116-
#endif //0
11733
}
11834

11935
QString QgsWCSProjectParser::wcsServiceUrl() const

src/mapserver/qgswfsprojectparser.cpp

-96
Original file line numberDiff line numberDiff line change
@@ -32,102 +32,6 @@ QgsWFSProjectParser::~QgsWFSProjectParser()
3232
void QgsWFSProjectParser::serviceCapabilities( QDomElement& parentElement, QDomDocument& doc ) const
3333
{
3434
mProjectParser.serviceCapabilities( parentElement, doc, "WFS" );
35-
36-
#if 0
37-
QDomElement serviceElem = doc.createElement( "Service" );
38-
39-
QDomElement propertiesElem = mProjectParser.propertiesElem();
40-
if ( propertiesElem.isNull() )
41-
{
42-
QgsConfigParserUtils::fallbackServiceCapabilities( parentElement, doc );
43-
return;
44-
}
45-
46-
QDomElement serviceCapabilityElem = propertiesElem.firstChildElement( "WMSServiceCapabilities" );
47-
if ( serviceCapabilityElem.isNull() || serviceCapabilityElem.text().compare( "true", Qt::CaseInsensitive ) != 0 )
48-
{
49-
QgsConfigParserUtils::fallbackServiceCapabilities( parentElement, doc );
50-
return;
51-
}
52-
53-
QDomElement wmsNameElem = doc.createElement( "Name" );
54-
QDomText wmsNameText = doc.createTextNode( "WFS" );
55-
wmsNameElem.appendChild( wmsNameText );
56-
serviceElem.appendChild( wmsNameElem );
57-
58-
//WMS title
59-
QDomElement titleElem = propertiesElem.firstChildElement( "WMSServiceTitle" );
60-
if ( !titleElem.isNull() )
61-
{
62-
QDomElement wmsTitleElem = doc.createElement( "Title" );
63-
QDomText wmsTitleText = doc.createTextNode( titleElem.text() );
64-
wmsTitleElem.appendChild( wmsTitleText );
65-
serviceElem.appendChild( wmsTitleElem );
66-
}
67-
68-
//WMS abstract
69-
QDomElement abstractElem = propertiesElem.firstChildElement( "WMSServiceAbstract" );
70-
if ( !abstractElem.isNull() )
71-
{
72-
QDomElement wmsAbstractElem = doc.createElement( "Abstract" );
73-
QDomText wmsAbstractText = doc.createTextNode( abstractElem.text() );
74-
wmsAbstractElem.appendChild( wmsAbstractText );
75-
serviceElem.appendChild( wmsAbstractElem );
76-
}
77-
78-
//keyword list
79-
QDomElement keywordListElem = propertiesElem.firstChildElement( "WMSKeywordList" );
80-
if ( !keywordListElem.isNull() && !keywordListElem.text().isEmpty() )
81-
{
82-
QDomNodeList keywordList = keywordListElem.elementsByTagName( "value" );
83-
QStringList keywords;
84-
for ( int i = 0; i < keywordList.size(); ++i )
85-
{
86-
keywords << keywordList.at( i ).toElement().text();
87-
}
88-
89-
if ( keywordList.size() > 0 )
90-
{
91-
QDomElement wfsKeywordElem = doc.createElement( "Keywords" );
92-
QDomText keywordText = doc.createTextNode( keywords.join( ", " ) );
93-
wfsKeywordElem.appendChild( keywordText );
94-
serviceElem.appendChild( wfsKeywordElem );
95-
}
96-
}
97-
98-
//OnlineResource element is mandatory according to the WMS specification
99-
QDomElement wmsOnlineResourceElem = propertiesElem.firstChildElement( "WMSOnlineResource" );
100-
QDomElement onlineResourceElem = doc.createElement( "OnlineResource" );
101-
onlineResourceElem.setAttribute( "xmlns:xlink", "http://www.w3.org/1999/xlink" );
102-
onlineResourceElem.setAttribute( "xlink:type", "simple" );
103-
if ( !wmsOnlineResourceElem.isNull() )
104-
{
105-
onlineResourceElem.setAttribute( "xlink:href", wmsOnlineResourceElem.text() );
106-
}
107-
108-
serviceElem.appendChild( onlineResourceElem );
109-
110-
//Fees
111-
QDomElement feesElem = propertiesElem.firstChildElement( "WMSFees" );
112-
if ( !feesElem.isNull() )
113-
{
114-
QDomElement wmsFeesElem = doc.createElement( "Fees" );
115-
QDomText wmsFeesText = doc.createTextNode( feesElem.text() );
116-
wmsFeesElem.appendChild( wmsFeesText );
117-
serviceElem.appendChild( wmsFeesElem );
118-
}
119-
120-
//AccessConstraints
121-
QDomElement accessConstraintsElem = propertiesElem.firstChildElement( "WMSAccessConstraints" );
122-
if ( !accessConstraintsElem.isNull() )
123-
{
124-
QDomElement wmsAccessConstraintsElem = doc.createElement( "AccessConstraints" );
125-
QDomText wmsAccessConstraintsText = doc.createTextNode( accessConstraintsElem.text() );
126-
wmsAccessConstraintsElem.appendChild( wmsAccessConstraintsText );
127-
serviceElem.appendChild( wmsAccessConstraintsElem );
128-
}
129-
parentElement.appendChild( serviceElem );
130-
#endif //0
13135
}
13236

13337
QString QgsWFSProjectParser::serviceUrl() const

0 commit comments

Comments
 (0)