QGIS API Documentation
3.16.0-Hannover (43b64b13f3)
|
QGIS Server OGC API endpoint. More...
#include <qgsserverogcapi.h>
Public Types | |
enum | ContentType { GEOJSON, OPENAPI3, JSON, HTML, XML } |
Media types used for content negotiation, insert more specific first. More... | |
enum | Rel { alternate, describedBy, collection, item, self, service_desc, service_doc, prev, next, license, items, conformance, data } |
Rel link types. More... | |
Public Member Functions | |
QgsServerOgcApi (QgsServerInterface *serverIface, const QString &rootPath, const QString &name, const QString &description=QString(), const QString &version=QString()) | |
QgsServerOgcApi constructor. More... | |
~QgsServerOgcApi () override | |
const QString | description () const override |
Returns the API description. More... | |
virtual void | executeRequest (const QgsServerApiContext &context) const override SIP_THROW(QgsServerApiBadRequestException) |
Executes a request by passing the given context to the API handlers. More... | |
const std::vector< std::shared_ptr< QgsServerOgcApiHandler > > | handlers () const |
Returns registered handlers. More... | |
const QString | name () const override |
Returns the API name. More... | |
template<class T , typename... Args> | |
void | registerHandler (Args... args) |
Registers an OGC API handler passing Args to the constructor. More... | |
void | registerHandler (QgsServerOgcApiHandler *handler) |
Registers an OGC API handler, ownership of the handler is transferred to the API. More... | |
const QString | rootPath () const override |
Returns the root path for the API. More... | |
const QString | version () const override |
Returns the version of the service. More... | |
Public Member Functions inherited from QgsServerApi | |
QgsServerApi (QgsServerInterface *serverIface) | |
Creates a QgsServerApi object. More... | |
virtual | ~QgsServerApi ()=default |
virtual bool | accept (const QUrl &url) const |
Returns true if the given url is handled by the API, default implementation checks for the presence of rootPath inside the url path. More... | |
QgsServerInterface * | serverIface () const |
Returns the server interface. More... | |
Static Public Member Functions | |
static const QHash< QgsServerOgcApi::ContentType, QList< QgsServerOgcApi::ContentType > > | contentTypeAliases () |
Returns contentType specializations (e.g. More... | |
static const QMap< QgsServerOgcApi::ContentType, QStringList > | contentTypeMimes () |
Returns a map of contentType => list of mime types. More... | |
static QString | contentTypeToExtension (const QgsServerOgcApi::ContentType &ct) |
Returns the file extension for a ct (Content-Type). More... | |
static std::string | contentTypeToStdString (const QgsServerOgcApi::ContentType &ct) |
Returns the string representation of a ct (Content-Type) attribute. More... | |
static QString | contentTypeToString (const QgsServerOgcApi::ContentType &ct) |
Returns the string representation of a ct (Content-Type) attribute. More... | |
static QgsServerOgcApi::ContentType | contenTypeFromExtension (const std::string &extension) |
Returns the Content-Type value corresponding to extension. More... | |
static std::string | mimeType (const QgsServerOgcApi::ContentType &contentType) |
Returns the mime-type for the contentType or an empty string if not found. More... | |
static std::string | relToString (const QgsServerOgcApi::Rel &rel) |
Returns the string representation of rel attribute. More... | |
static QUrl | sanitizeUrl (const QUrl &url) |
Returns a sanitized url with extra slashes removed. More... | |
QGIS Server OGC API endpoint.
QgsServerOgcApi provides the foundation for the new generation of REST-API based OGC services (e.g. WFS3).
This class can be used directly and configured by registering handlers as instances of QgsServerOgcApiHandler.
Definition at line 48 of file qgsserverogcapi.h.
Media types used for content negotiation, insert more specific first.
Enumerator | |
---|---|
GEOJSON | |
OPENAPI3 | |
JSON | "application/openapi+json;version=3.0" |
HTML | |
XML |
Definition at line 79 of file qgsserverogcapi.h.
enum QgsServerOgcApi::Rel |
Rel link types.
Definition at line 57 of file qgsserverogcapi.h.
QgsServerOgcApi::QgsServerOgcApi | ( | QgsServerInterface * | serverIface, |
const QString & | rootPath, | ||
const QString & | name, | ||
const QString & | description = QString() , |
||
const QString & | version = QString() |
||
) |
QgsServerOgcApi constructor.
serverIface | pointer to the server interface |
rootPath | root path for this API (usually starts with a "/", e.g. "/wfs3") |
name | API name |
description | API description |
version | API version |
Definition at line 49 of file qgsserverogcapi.cpp.
|
override |
Definition at line 59 of file qgsserverogcapi.cpp.
|
static |
Returns contentType specializations (e.g.
JSON => [GEOJSON, OPENAPI3], XML => [GML])
Definition at line 119 of file qgsserverogcapi.cpp.
|
static |
Returns a map of contentType => list of mime types.
Definition at line 114 of file qgsserverogcapi.cpp.
|
static |
Returns the file extension for a ct (Content-Type).
Definition at line 145 of file qgsserverogcapi.cpp.
|
static |
Returns the string representation of a ct (Content-Type) attribute.
Definition at line 139 of file qgsserverogcapi.cpp.
|
static |
Returns the string representation of a ct (Content-Type) attribute.
Definition at line 132 of file qgsserverogcapi.cpp.
|
static |
Returns the Content-Type value corresponding to extension.
Definition at line 150 of file qgsserverogcapi.cpp.
|
inlineoverridevirtual |
Returns the API description.
Implements QgsServerApi.
Definition at line 105 of file qgsserverogcapi.h.
|
overridevirtual |
Executes a request by passing the given context to the API handlers.
Implements QgsServerApi.
Definition at line 81 of file qgsserverogcapi.cpp.
const std::vector< std::shared_ptr< QgsServerOgcApiHandler > > QgsServerOgcApi::handlers | ( | ) | const |
Returns registered handlers.
Definition at line 182 of file qgsserverogcapi.cpp.
|
static |
Returns the mime-type for the contentType or an empty string if not found.
Definition at line 173 of file qgsserverogcapi.cpp.
|
inlineoverridevirtual |
|
inline |
Registers an OGC API handler passing Args to the constructor.
Definition at line 136 of file qgsserverogcapi.h.
void QgsServerOgcApi::registerHandler | ( | QgsServerOgcApiHandler * | handler | ) |
Registers an OGC API handler, ownership of the handler is transferred to the API.
Definition at line 64 of file qgsserverogcapi.cpp.
|
static |
Returns the string representation of rel attribute.
Definition at line 124 of file qgsserverogcapi.cpp.
|
inlineoverridevirtual |
Returns the root path for the API.
Implements QgsServerApi.
Definition at line 107 of file qgsserverogcapi.h.
|
static |
Returns a sanitized url with extra slashes removed.
Definition at line 70 of file qgsserverogcapi.cpp.
|
inlineoverridevirtual |
Returns the version of the service.
Reimplemented from QgsServerApi.
Definition at line 106 of file qgsserverogcapi.h.