GSoC 2022: Project Helioviewer — Facade for the API wrapper

GSoC 2022: Project Helioviewer — Facade for the API wrapper

Week 3

The Generic Function got merged with PR #21. This PR adds a function that accepts a URL Endpoint, Input Parameters (dictionary), and a descriptor of Output Parameters (what the endpoint is expected to return), which all the endpoint classes will inherit.

This PR also includes the unittest for the Generic function and brings the first endpoint to the API wrapper, which is getJP2Image. This endpoint retrieves a JP2000 image from the helioviewer.org API.

Week 4

The next task was to create a frontend for the getJP2Image endpoint. The actual front end that users will interface with lives in a file called facade which will hide this internal design. This module contains the API interface in its simplest form. It is responsible for taking user input, constructing the HvpyParameters instance (the base class) and passing it to the core to perform the request.

View the code in:

Week 5

Finally, after the merging of the frontend function, we bring more JPEG2000 endpoints.

  • PR #34 — Adds the endpoint to the backend.
  • PR #36 — Adds the frontend function.

Week 6

Still, a problem left to solve. There are several mirrors for Helioviewer and people might want to use a mirror instead of the main URL. So we will need to add a way to change this.

PR #41 closes this issue but it’s still under work. Hopefully, by the end of the week, it gets merged :)