Add a Solver Web API
Why?
This section is for describing the need motivating the feature
No real reason, I just want to see if it's possible to plug a web service with the current architecture. I think it is, with maybe some adjustments.
What?
This section is for describing the external interface impacts.
Implement the following REST API (WIP):
HTTP Verb | Address | Behaviour |
---|---|---|
POST | /solver/job | Creates a new solver job |
GET | /solver/job/{solver_job_id} | Gets the progress of the solver job with the given ID |
DELETE | /solver/job/{solver_job_id} | Cancels the solver job with the given ID |
Note 1: The goal is to define a REST API for the croiseur's Solver Service. The Dictionary Service is not in the scope of this ticket. Hence its absence from the table above.
Note 2: As solver result may take time (several seconds), the model of request-response is asynchronous. See this link and this link for strategies on how to implement it.
Note 3: To be revisited when #39 (closed) is implemented.
How?
This section is for describing major internal interface impacts, i.e. any change in a module API which is not part of the external interfaces mentioned above. Some implementation choices may be given here as well.
TODO:
- Define new module(s) name(s):
croiseur-ws
? - Define module(s) API(s) change(s)
- Define the frameworks/tools to use (e.g. Spring Boot).
Tasks?
This section is for tracking development tasks
TODO