32#define QSTR_COMPARE( str, lit ) \
33 ( str.compare( QLatin1String( lit ), Qt::CaseInsensitive ) == 0 )
54 , mServerIface( serverIface )
57 QString
name()
const override {
return QStringLiteral(
"WFS" ); }
58 QString
version()
const override {
return mVersion; }
65 QString versionString = params.
version();
66 if ( versionString.isEmpty() )
72 const QString req = params.
request();
75 throw QgsServiceException( QStringLiteral(
"OperationNotSupported" ), QStringLiteral(
"Please add or check the value of the REQUEST parameter" ), 501 );
92 writeGetFeature( mServerIface, project, versionString, request, response );
107 writeTransaction( mServerIface, project, versionString, request, response );
113 throw QgsServiceException( QStringLiteral(
"OperationNotSupported" ), QStringLiteral(
"Request %1 is not supported" ).arg( req ), 501 );
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
QgsServerInterface Class defining interfaces exposed by QGIS Server and made available to plugins.
virtual QString request() const
Returns REQUEST parameter as a string or an empty string if not defined.
virtual QString version() const
Returns VERSION parameter as a string or an empty string if not defined.
QgsServerRequest Class defining request interface passed to services QgsService::executeRequest() met...
QgsServerResponse Class defining response interface passed to services QgsService::executeRequest() m...
Class defining the service module interface for QGIS server services.
QgsServiceRegistry Class defining the registry manager for QGIS server services.
void registerService(QgsService *service)
Register a service by its name and version.
QgsService Class defining interfaces for QGIS server services.
Module specialized for WFS service.
void registerSelf(QgsServiceRegistry ®istry, QgsServerInterface *serverIface) override
Asks the module to register all provided services.
Exception class for WFS service exceptions.
Provides an interface to retrieve and manipulate WFS parameters received from the client.
OGC web service specialized for WFS.
void executeRequest(const QgsServerRequest &request, QgsServerResponse &response, const QgsProject *project) override
Execute the requests and set result in QgsServerRequest.
QString name() const override
Service(const QString &version, QgsServerInterface *serverIface)
Constructor for WFS service.
QString version() const override
void writeGetCapabilities(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS GetCapabilities response.
void writeTransaction(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS transaction response.
QString implementationVersion()
Returns the highest version supported by this implementation.
void writeDescribeFeatureType(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS GetCapabilities response.
void writeTransaction(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS transaction response.
void writeGetFeature(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS GetFeature response.
void writeGetCapabilities(QgsServerInterface *serverIface, const QgsProject *project, const QString &version, const QgsServerRequest &request, QgsServerResponse &response)
Output WFS GetCapabilities response.
#define QgsDebugMsgLevel(str, level)
#define QSTR_COMPARE(str, lit)
QGISEXTERN QgsServiceModule * QGS_ServiceModule_Init()
QGISEXTERN void QGS_ServiceModule_Exit(QgsServiceModule *)