context_stream.cc 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #include "proto/context/v1/stream.pb.h"
  3. #include "context_stream.h"
  4. #include "libnetdata/libnetdata.h"
  5. struct stop_streaming_ctxs *parse_stop_streaming_ctxs(const char *data, size_t len)
  6. {
  7. context::v1::StopStreamingContexts msg;
  8. struct stop_streaming_ctxs *res;
  9. if (!msg.ParseFromArray(data, len))
  10. return NULL;
  11. res = (struct stop_streaming_ctxs *)callocz(1, sizeof(struct stop_streaming_ctxs));
  12. res->claim_id = strdupz(msg.claim_id().c_str());
  13. res->node_id = strdupz(msg.node_id().c_str());
  14. return res;
  15. }
  16. struct ctxs_checkpoint *parse_ctxs_checkpoint(const char *data, size_t len)
  17. {
  18. context::v1::ContextsCheckpoint msg;
  19. struct ctxs_checkpoint *res;
  20. if (!msg.ParseFromArray(data, len))
  21. return NULL;
  22. res = (struct ctxs_checkpoint *)callocz(1, sizeof(struct ctxs_checkpoint));
  23. res->claim_id = strdupz(msg.claim_id().c_str());
  24. res->node_id = strdupz(msg.node_id().c_str());
  25. res->version_hash = msg.version_hash();
  26. return res;
  27. }