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

Support /results/{id} and /outputs/{id} routes #18

Open
7 tasks
fmigneault opened this issue Mar 14, 2019 · 0 comments
Open
7 tasks

Support /results/{id} and /outputs/{id} routes #18

fmigneault opened this issue Mar 14, 2019 · 0 comments
Assignees
Labels
good first issue Good for newcomers process/wps2 Issue related to WPS 2.x processes support process/wps3 Issue related to WPS 3.x (REST-JSON) processes support project/CRIM-DEVOPS Project linked to the CRIM project DevOps/Weaver (https://crim-ca.atlassian.net/browse/GD-47). triage/conformance Issue related to fixing/ensuring compliance to specifications.

Comments

@fmigneault
Copy link
Collaborator

fmigneault commented Mar 14, 2019

Only "/results" is currently supported (similar to "/outputs") due to Testbed14 conformance.
To ensure back-compatibility with similar WPS REST interfaces, these routes to request specific outputs by ID should be added.

see: https://52north.github.io/tamis-rest-api/

To Do

  • add endpoint definitions
  • add conformance entries
  • test that individual items can be retrieved individually as defined by the specification (consider File vs literals and which content they must support/return)
  • reuse/extend Job output transform #548
    • Given an Accept header referring to a different type than the original output format, the alternate representation (if it can be mapped), should be returned
    • If the alternate format can be represented, the generated file can be stored next to the original one, with the alternate extension. It should be reused (cached) if requested again afterward.
      For example, a JSON stored under .../{jobId}/{outputId}/file.json could be requested in YAML, which could be stored under .../{jobId}/{outputId}/file.yaml. Requesting Accept: application/x-yaml a second time should simply return that file's contents rather than regenerating it from the JSON.
    • If the alternate representation cannot be mapped (incompatible/unsupported types), raise HTTP 406 Not Acceptable with an appropriate message

References

@fmigneault fmigneault added the process/wps2 Issue related to WPS 2.x processes support label Mar 14, 2019
@fmigneault fmigneault self-assigned this Mar 14, 2019
@fmigneault fmigneault added process/wps3 Issue related to WPS 3.x (REST-JSON) processes support good first issue Good for newcomers labels Mar 25, 2019
@fmigneault fmigneault added the triage/conformance Issue related to fixing/ensuring compliance to specifications. label Sep 15, 2020
@fmigneault fmigneault changed the title Support "outputs" and "outputs/{id}" routes Support /results/{id} and /outputs/{id} routes Apr 29, 2024
@fmigneault fmigneault added the project/CRIM-DEVOPS Project linked to the CRIM project DevOps/Weaver (https://crim-ca.atlassian.net/browse/GD-47). label May 7, 2024
fmigneault added a commit that referenced this issue Sep 20, 2024
…planned test for result by ID with accept (relates to #18)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers process/wps2 Issue related to WPS 2.x processes support process/wps3 Issue related to WPS 3.x (REST-JSON) processes support project/CRIM-DEVOPS Project linked to the CRIM project DevOps/Weaver (https://crim-ca.atlassian.net/browse/GD-47). triage/conformance Issue related to fixing/ensuring compliance to specifications.
Projects
None yet
Development

No branches or pull requests

2 participants