130 Commits

Author SHA1 Message Date
rldhont
3692fcdb96
Merge pull request #5561 from pvalsecc/wms_ogc_filters
[FEATURE][needs-docs] Add OGC filters to WMS
2017-12-15 09:47:22 +01:00
Nyall Dawson
a15b54d997 Swap missing 0->nullptr and add missing overrides 2017-12-12 21:14:58 +11:00
Denis Rouzaud
f29306d4af [doxygen] replace @param by \param 2017-12-06 08:31:12 -04:00
Patrick Valsecchi
b8f708ff1b [FEATURE][needs-docs] Add OGC filters to WMS
Implement https://github.com/qgis/QGIS-Enhancement-Proposals/issues/104
2017-11-28 07:40:33 +01:00
Nyall Dawson
2e6d125a6f Use =default, =delete where possible 2017-11-11 15:22:19 +10:00
Juergen E. Fischer
a1024905bf fix windows warnings 2017-11-07 21:44:54 +01:00
rldhont
7b455d8700 [Server][FEATURE] Handle request from QgsServer with a QgsProject
With this commit, it's posssible to handle a request from a QgsProject without writing it to the disk.

```python
server = QgsServer()
project = QgsProject()
vlayer = QgsVectorLayer("/path/to/shapefile/file.shp", "layer_name_you_like", "ogr")
project.addMapLayer(vlayer)

query_string = 'https://www.qgis.org/?SERVICE=WMS&VERSION=1.3&REQUEST=GetCapabilities'
request = QgsBufferServerRequest(query_string, QgsServerRequest.GetMethod, {}, data)
response = QgsBufferServerResponse()
server.handleRequest(request, response, project)
```
2017-10-20 09:44:24 +02:00
Denis Rouzaud
6e14854f90 [sipify] remove redundant private sections 2017-10-09 09:51:40 +02:00
Nyall Dawson
49b426d951 Make doxygen_space script convert multiline //! comments
Because:
- the /** format is much more prevalent throughout QGIS
- sipify works correctly with /**
2017-10-06 07:55:52 +10:00
Nyall Dawson
92af1dacaf Replace default constructors/destructors with = default 2017-10-01 06:52:14 +10:00
rldhont
8774e69328 [Server] Refactoring, removing qgs*parser files 2017-09-19 07:34:34 +02:00
rldhont
a35af0c101 [Server] Refactoring, removing config parser from WMS 2017-09-19 07:34:34 +02:00
Alessandro Pasotti
c0c18cd466 Added missing \param to ctor documentation 2017-07-27 19:22:01 +02:00
rldhont
08c06def1b Merge pull request #4846 from rldhont/server-wms-configparser-getfeatureinfo
[Server] WMS GetFeatureInfo refactoring
2017-07-19 10:00:01 +02:00
Juergen E. Fischer
4f9a9e0360 s/( )/()/; s/== /== /; s/!= /!= /; 2017-07-19 09:19:37 +02:00
rldhont
f926033699 [Server] WMS GetFeatureInfo refactoring 2017-07-17 12:39:34 +02:00
Denis Rouzaud
54c6291378 script to write include SIP files 2017-06-28 10:45:51 +02:00
Juergen E. Fischer
0f83a5f52d fix windows build 2017-06-27 13:31:27 +02:00
Denis Rouzaud
b7d524c111 sipify server 2017-06-26 14:22:26 +02:00
Nyall Dawson
2b7b0db747 Allow keyword arguments for all arguments in PyQGIS bindings
Previously this was only enabled for optional arguments (i.e.
those with default values). Enabling them for all arguments
allows for more readable PyQGIS code, and there seems no
downside given that we already have this support partly enabled.

The consequence of this change is that when 3.0 API is frozen
the freeze must also include the naming of function arguments,
since that's effectively now part of public API.
2017-06-25 20:07:14 +10:00
Blottiere Paul
c85cf23344 Update sip binding 2017-05-30 10:50:28 +02:00
rldhont
5b78297149 [Server] Rename QgsServerProjectUtils::wcsLayers to QgsServerProjectUtils::wcsLayerIds 2017-05-26 16:59:24 +02:00
rldhont
95a5ccefab [Server] fix wmsInspireActivated to wmsInspireActivate 2017-05-25 17:27:46 +02:00
rldhont
087e7f75dc [Server] wmsInfoFormatSIA2045 to wmsInfoFormatSia2045: Qt style naming 2017-05-21 10:43:03 +02:00
rldhont
ca29b221c0 [Server] Update QgsServerProjectUtils SIP file 2017-05-20 16:29:58 +02:00
Alessandro Pasotti
cbef51cc0a [server] Sipify QgsRequestHandler 2017-05-16 11:57:28 +02:00
Alessandro Pasotti
569593b79a [server] Python plugins API cleanup part 3
This removes the handleRequest method that returns the
headers and body as byte array.

This superceeded by the implementation that takes a
request and response instances.
2017-05-03 10:58:18 +02:00
Alessandro Pasotti
2afcad279d [server] Python plugins API cleanup part 2
This part adds the headers as an optional argument
to the request and start using the handleRequest(request, response)
call in the python tests.

Some additional tests are also added.
2017-05-03 10:58:18 +02:00
Alessandro Pasotti
b7d6c1e59e [server] Python plugins API cleanup part 1
This is the first step to a cleaner and consitent API
for server plugin.

It also adds some new tests for the base request and
response classes
2017-05-03 10:57:39 +02:00
Denis Rouzaud
85f3b81b55 remove double spaces in sip files
fix indentation
2017-05-03 08:02:14 +02:00
Denis Rouzaud
7d459149c7 [sip] align missing bits and replace nullptr by 0 2017-05-02 08:09:53 +02:00
Denis Rouzaud
93971d5ed3 [sip] align pointer and reference in blacklisted files
this will facilitate sip diff checking
2017-05-01 17:49:43 +02:00
Alessandro Pasotti
cbcd193875 [server] Add to API break and pass enum by value 2017-04-22 13:56:00 +02:00
Alessandro Pasotti
c2ba23173a [server] handleRequest accept QgsServerRequest.Method instead of a string
Also made this optional
2017-04-22 11:05:06 +02:00
Alessandro Pasotti
7f08e7206f [server] More Qt-style getter changes getHeader( key ) -> header( key ) 2017-04-22 10:27:10 +02:00
Alessandro Pasotti
d03b005969 [server] Expose HTTP status code and test refactoring
* Renamed returnCode to statusCode (as per RFC https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html)
* Expose statusCode to server iface
* API Break: Renamed getHeader() to header() Qt-style
* Split server plugin filter tests in its own test file
* Added tests for clearBody() and body() getter
2017-04-22 10:17:08 +02:00
David Marteau
018d2a24fb Server: pass full url string and data to handleRequest()
Fix tests by removing passing url pieces from environment
2017-04-21 17:38:25 +02:00
David Marteau
a55390e319 Restore body() accessor in QgsRequestHandler
Restore clearBody() method in QgsRequestHandler
2017-04-21 14:33:10 +02:00
rldhont
d018f0329a [Server] remove QgsWfsProjectParser 2017-04-08 17:07:17 +02:00
rldhont
04ed2b4dcd [Server] WFS GetCapapbilities and DescribeFeatureType refactoring
Remove QgsWFSProjectParser from GetCapabilities and DescribeFeatureType
2017-04-08 17:06:56 +02:00
rldhont
98d323edb1 [Server] Remove QgsWCSProjectParser 2017-02-27 16:55:00 +01:00
Blottiere Paul
44da573002 replace class by namespace 2017-01-30 08:21:06 +01:00
Blottiere Paul
5594418113 fix typo 2017-01-30 08:21:06 +01:00
Blottiere Paul
5c8360dba2 [server] WIP clean project parsing by using QgsProject 2017-01-30 08:21:05 +01:00
Juergen E. Fischer
6a56cb0dd0 updates and fixes for windows qt5/py3 build 2017-01-24 01:25:59 +01:00
Denis Rouzaud
4c3968b9aa more spelling fixes 2017-01-20 15:06:09 +01:00
David Marteau
e17a7d4e21 Move wcs as service module 2017-01-17 22:02:02 +01:00
David Marteau
56b2f08865 Move wfs as service module 2017-01-17 17:21:25 +01:00
Denis Rouzaud
0a63d1f2c2 [spellcheck] properly look into various cases and add more fixes" 2017-01-16 16:39:20 +01:00
David Marteau
8b0526d678 Revisit server exceptions
- Add server exception base class
    - Enable per service exception definition
    - Handle QgsException gracefully (error 500)
    - Handle OGC exception versioning
2017-01-14 22:17:45 +01:00