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

APIv2: align geo-location queries with last changes in spec #1677

Closed
fgalan opened this issue Jan 15, 2016 · 9 comments
Closed

APIv2: align geo-location queries with last changes in spec #1677

fgalan opened this issue Jan 15, 2016 · 9 comments

Comments

@fgalan
Copy link
Member

fgalan commented Jan 15, 2016

PR #1524 introduced some changes in the way geolocation queries work regarding the first implementation (e.g. new georel parameter). This issue is about modifying Orion in order to align with that new approach.

@fgalan
Copy link
Member Author

fgalan commented Feb 8, 2016

As with former NGSIv2 geo-query parameters, the idea is to translate them to a NGSIv1 FIWARE::Location scope, then process that FIWARE::Location at mongoBackend to render the query. As (positive) side effect, NGSIv1 geo-query functionality will be enhanced.

In fact, let's use "FIWARE::Location::NGSIv2". Trying to "fit" NGSIv2 geo-queries in the original FIWARE::Location containers can be hard.

            {
                "type": "FIWARE::Location::NGSIv2",
                "value": {
                    "georel": [ <the parsed georel: near, coveredBy, intersects, equals, disjoint; one element in each vector> ]
                    "geometry": "<point|line|polygon|box>",
                   "coords": [ <array of tuples with coordinates> ]
                }
            }

Note that "georel" can't be a simple property, due to the near operation has minRadius and maxRadius that we need also to take into account.

Probably a new class to hold this information will be needed as interface between serivceRoutines and mongoBackend.

@fgalan
Copy link
Member Author

fgalan commented Feb 15, 2016

Scope/areas implemented in PR #1677. Next, mongoBackend processing the new types is needed.

@fgalan
Copy link
Member Author

fgalan commented Feb 16, 2016

mongoBackend part (along with some adjust in other layers) in PR #1801

What is missing yet to close this issue is the processing of FIWARE::Location::NGSIv2 scopes as part of the payload of /v1/queryContext

@fgalan
Copy link
Member Author

fgalan commented Feb 17, 2016

The branch to complete the work is feature/1677_ngsi2_geoqueries_as_payload_scope. It currently includes doc changes and .test (only the SHELL part... the REGEXEPCT part would need to be adjusted to the NGSIv1 format).

@fgalan
Copy link
Member Author

fgalan commented Feb 23, 2016

Finished (the last part regarding NGSIv1) in PR #1828

@fgalan fgalan closed this as completed Feb 23, 2016
@fgalan fgalan modified the milestones: QATestPending, 0.28.0 Mar 10, 2016
@fgalan fgalan assigned iariasleon and unassigned kzangeli Mar 10, 2016
@fgalan
Copy link
Member Author

fgalan commented Mar 10, 2016

QA Acceptance Test pending. Reopened and asigned to QATestPending milestone.

@fgalan fgalan reopened this Mar 10, 2016
@iariasleon
Copy link
Contributor

pending tests are created in its feature associated

@iariasleon
Copy link
Contributor

E2E covered in:
features/pepflows/003_pep2cbv2_geojsonsupport.feature
features/pepflows/017_pep2cbv2_geonotifications.feature

@fgalan
Copy link
Member Author

fgalan commented Feb 15, 2018

Issues in milestone QATestPendingE2ECovered are going to be closed (it is not realistic to think we would have people working on behave testing at the present moment). However, issue is labeled with QATestPending label in the case things change and we need to recover it.

@fgalan fgalan closed this as completed Feb 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants