QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
server
qgsserverapicontext.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsserverapicontext.cpp - QgsServerApiContext
3
4
---------------------
5
begin : 13.5.2019
6
copyright : (C) 2019 by Alessandro Pasotti
7
email : elpaso at itopen dot it
8
***************************************************************************
9
* *
10
* This program is free software; you can redistribute it and/or modify *
11
* it under the terms of the GNU General Public License as published by *
12
* the Free Software Foundation; either version 2 of the License, or *
13
* (at your option) any later version. *
14
* *
15
***************************************************************************/
16
#include "
qgsserverapicontext.h
"
17
18
#include "
qgsproject.h
"
19
#include "
qgsserverinterface.h
"
20
#include "
qgsserverrequest.h
"
21
#include "
qgsserverresponse.h
"
22
23
QgsServerApiContext::QgsServerApiContext
(
const
QString &
apiRootPath
,
const
QgsServerRequest
*
request
,
QgsServerResponse
*
response
,
const
QgsProject
*
project
,
QgsServerInterface
*
serverInterface
)
24
: mApiRootPath(
apiRootPath
)
25
, mRequest(
request
)
26
, mResponse(
response
)
27
, mProject(
project
)
28
, mServerInterface(
serverInterface
)
29
{}
30
31
const
QgsServerRequest
*
QgsServerApiContext::request
()
const
32
{
33
return
mRequest;
34
}
35
36
37
QgsServerResponse
*
QgsServerApiContext::response
()
const
38
{
39
return
mResponse;
40
}
41
42
43
const
QgsProject
*
QgsServerApiContext::project
()
const
44
{
45
return
mProject;
46
}
47
48
void
QgsServerApiContext::setProject
(
const
QgsProject
*
project
)
49
{
50
mProject =
project
;
51
}
52
53
QgsServerInterface
*
QgsServerApiContext::serverInterface
()
const
54
{
55
return
mServerInterface;
56
}
57
58
const
QString
QgsServerApiContext::matchedPath
()
const
59
{
60
QString path { mRequest->url().path() };
61
const
auto
idx { path.indexOf( mApiRootPath ) };
62
if
( idx != -1 )
63
{
64
path.truncate( idx + mApiRootPath.length() );
65
return
path;
66
}
67
else
68
{
69
return
QString();
70
}
71
}
72
73
QString
QgsServerApiContext::apiRootPath
()
const
74
{
75
return
mApiRootPath;
76
}
77
78
void
QgsServerApiContext::setRequest
(
const
QgsServerRequest
*
request
)
79
{
80
mRequest =
request
;
81
}
82
83
QString
QgsServerApiContext::handlerPath
()
const
84
{
85
const
QUrl url {
request
()->
url
() };
86
const
QString urlBasePath {
matchedPath
() };
87
if
( !urlBasePath.isEmpty() )
88
{
89
return
url.path().mid( urlBasePath.length() );
90
}
91
else
92
{
93
return
url.path();
94
}
95
}
QgsProject
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Definition
qgsproject.h:114
QgsServerApiContext::project
const QgsProject * project() const
Returns the (possibly NULL) project.
Definition
qgsserverapicontext.cpp:43
QgsServerApiContext::response
QgsServerResponse * response() const
Returns the server response object.
Definition
qgsserverapicontext.cpp:37
QgsServerApiContext::handlerPath
QString handlerPath() const
Returns the handler component of the URL path, i.e.
Definition
qgsserverapicontext.cpp:83
QgsServerApiContext::request
const QgsServerRequest * request() const
Returns the server request object.
Definition
qgsserverapicontext.cpp:31
QgsServerApiContext::setProject
void setProject(const QgsProject *project)
Sets the project to project.
Definition
qgsserverapicontext.cpp:48
QgsServerApiContext::setRequest
void setRequest(const QgsServerRequest *request)
Sets context request to request.
Definition
qgsserverapicontext.cpp:78
QgsServerApiContext::serverInterface
QgsServerInterface * serverInterface() const
Returns the server interface.
Definition
qgsserverapicontext.cpp:53
QgsServerApiContext::apiRootPath
QString apiRootPath() const
Returns the API root path.
Definition
qgsserverapicontext.cpp:73
QgsServerApiContext::QgsServerApiContext
QgsServerApiContext(const QString &apiRootPath, const QgsServerRequest *request, QgsServerResponse *response, const QgsProject *project, QgsServerInterface *serverInterface)
QgsServerApiContext constructor.
Definition
qgsserverapicontext.cpp:23
QgsServerApiContext::matchedPath
const QString matchedPath() const
Returns the initial part of the incoming request URL path that matches the API root path.
Definition
qgsserverapicontext.cpp:58
QgsServerInterface
Defines interfaces exposed by QGIS Server and made available to plugins.
Definition
qgsserverinterface.h:61
QgsServerRequest
Defines requests passed to QgsService classes.
Definition
qgsserverrequest.h:36
QgsServerRequest::url
QUrl url() const
Returns the request URL as seen by QGIS server.
Definition
qgsserverrequest.cpp:88
QgsServerResponse
Defines the response interface passed to QgsService.
Definition
qgsserverresponse.h:42
qgsproject.h
qgsserverapicontext.h
qgsserverinterface.h
qgsserverrequest.h
qgsserverresponse.h
Generated on
for QGIS API Documentation by
1.17.0