Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implemented response paging for WFS 2.0.0 #619

Merged
merged 26 commits into from
Dec 10, 2015

Conversation

lgoltz
Copy link
Contributor

@lgoltz lgoltz commented Nov 4, 2015

This pull requests adds the response paging functionality to WFS 2.0.0. If a GetFeature request is sent (with a count value), the response contains @next and @previous attributes which contain URIs to the next or previous features (number = count value). By using that URIs, the user can page forward and backwards through the features. In the capabilities the constraint "ImplementsResultPaging" states that the response paging functionality is enabled. Currently, the implementation is not transaction safe. This is stated by the constraint "PagingIsTransactionSafe" which is always set to false.

Currently @next and @previous URLs bases on the original GetFeature request in KVP encoding.
Response Paging works only when streaming is disabled.
By default, WFS 2.0.0 does not support response paging and it can be enabled by configuration.

lgoltz and others added 24 commits October 29, 2015 09:22
…ntegrated check of configuration in GmlGetFeatureHandler.
@lgoltz lgoltz changed the title Response paging 246 Implemented response paging for WFS 2.0.0 Nov 4, 2015
@dstenger dstenger added the feature feature label Nov 4, 2015
@tfr42 tfr42 added this to the 3.4 milestone Nov 6, 2015
@copierrj
Copy link
Member

There is a lot of stuff in this PR that is not directly related to response paging. Could you explain why all these things are needed to implement paging?

@stephanr
Copy link
Member

Can you please explain how the change handles the offset and pageing in more detail please ?
Is the compute work done by the database using extra limit / offset syntax or by skipping the first n entries ?

@dstenger
Copy link
Contributor

The next and previous URLs base on GetFeature request which can currently already be handled by deegree.
Example:

The response paging mechanism uses the incoming URL and just adds/ manipulates the startIndex and count parameters. In addition, the mechanism determines if there is a next or previous URL and just adds the next/previous attribute to the response if there is a corresponding URL.
The new encoder classes are used to encode an incoming request to a map, which is needed to build the next and previous URLs.

@tfr42
Copy link
Member

tfr42 commented Dec 10, 2015

The Filter200XMLEncoder is required to process a incoming GetFeature request using paging functionality.

@copierrj
Copy link
Member

Fixing #648 would make this functionality scale a lot better

copierrj added a commit that referenced this pull request Dec 10, 2015
Implemented response paging for WFS 2.0.0
@copierrj copierrj merged commit 9893fb7 into deegree:master Dec 10, 2015
@lgoltz lgoltz deleted the responsePaging-246 branch December 8, 2022 09:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants