Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
C++: add missing implementations for client advertised schema/encoding (
#876) ### Changelog C++ server/client: add missing implementations for client advertised schema / schema encoding ### Docs None ### Description Although foxglove ws protocol allow client to advertise complete schema definition string as well as schema name, current C++ implementation lacks such fields. Particularly: * `ClientAdvertisement` struct lacks `schemaEncoding` field, * `ClientAdvertisement` struct has `schema` field, but it is never populated (websocket server does not read schema or schema encoding to json) * websocket client is does not serialize schema or schema encoding to json This PR resolves above problems, and additionally since this is breaking change from unimplemented to implemented, types are decided as following: * `schema` field type is changed from `std::vector<uint8_t>` to `std::optional<std::string>`, as schema fields are passed in as json quoted string, and it's optional * `schemaEncoding` field type is determined as `std::optional<std::string>`, the same reason for `schema`. Fixes: #875 Fixes: FG-9447 --------- Co-authored-by: Hans-Joachim Krauch <achim-k@users.noreply.github.com>
- Loading branch information