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

serial interface: respond with correctly formatted dummy data #61

Closed
dhebbeker opened this issue Nov 1, 2023 · 0 comments · Fixed by Task-Tracker-Systems/Protocol-Serial-Interface#1 or #122
Assignees

Comments

@dhebbeker
Copy link
Member

dhebbeker commented Nov 1, 2023

The functions called by the command parser (see #61) must reply with correctly formatted data ad defined by the protocol.

A JSON parses may be used (for example generated by quicktype.

Acceptance criteria:

  • the responses must be correctly formatted
  • dummy data may be used

Depends on:

@dhebbeker dhebbeker added the blocked Requires another issue to be resolved first. label Nov 1, 2023
@dhebbeker dhebbeker removed the blocked Requires another issue to be resolved first. label Feb 23, 2024
@dhebbeker dhebbeker self-assigned this Feb 23, 2024
@dhebbeker dhebbeker linked a pull request Apr 27, 2024 that will close this issue
2 tasks
dhebbeker added a commit to Task-Tracker-Systems/Protocol-Serial-Interface that referenced this issue May 31, 2024
dhebbeker added a commit that referenced this issue Sep 21, 2024
Resolves #61 

- [x] dependency must be merged first:
Task-Tracker-Systems/Protocol-Serial-Interface#1
- [x] describe suggested changes 

### Summary

Use a JSON library to serialize objects to JSON formatted strings. Send
dummy data.

- `lib/3rd_party_adapters/nlohmann/JsonGenerator.cpp`: Add adapter for
using a library which parses to/from JSON format.
Although the operations currently used by the adapter are rather simple
(to JSON) - one could argue that the use of the library is excessive.
The library is used in anticipation that JSON strings will be parsed
(from JSON).
The `to_json()` definitions allows to use the library to parse arrays of
the specific object.
- `lib/application_business_rules/serial_interface/JsonGenerator.hpp` is
a generic interface to the adapter above.
- `lib/application_business_rules/serial_interface/Protocol.cpp`:
  - add command for "info" query
  - add dummy objects to be sent
- `lib/enterprise_business_rules/serial_protocol/DeletedTaskObject.hpp`:
defines structure for [deleted task JSON
object](https://github.com/Task-Tracker-Systems/Protocol-Serial-Interface/blob/9315fd14875894c13f2616d422e197d37d798233/deleted-task-object.schema.json)
-
`lib/enterprise_business_rules/serial_protocol/ProtocolVersionObject.hpp`:
Defines structure for [protocol version JSON
object](https://github.com/Task-Tracker-Systems/Protocol-Serial-Interface/blob/9315fd14875894c13f2616d422e197d37d798233/protocol-version-object.schema.json)
- `lib/enterprise_business_rules/serial_protocol/TaskObject.hpp`:
Defines structure for [task JSON
object](https://github.com/Task-Tracker-Systems/Protocol-Serial-Interface/blob/9315fd14875894c13f2616d422e197d37d798233/task-object.schema.json)
- `lib/enterprise_business_rules/serial_protocol/TaskList.hpp`: Defines
a container for [an array of JSON task
objects](https://github.com/Task-Tracker-Systems/Protocol-Serial-Interface/blob/9315fd14875894c13f2616d422e197d37d798233/task-object.schema.json)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant