4 #include <condition_variable>
10 #include <json/json.h>
12 #include "config/config.h"
13 #include "http/httpclient.h"
14 #include "logging/logging.h"
15 #include "uptane/tuf.h"
28 ReportEvent(std::string event_type,
int event_version)
29 : id(Utils::randomUuid()), type(std::move(event_type)), version(event_version), timestamp(TimeStamp::Now()) {}
32 void setCorrelationId(
const std::string& correlation_id);
90 void enqueue(std::unique_ptr<ReportEvent>
event);
96 std::shared_ptr<HttpInterface> http;
98 std::condition_variable cv_;
100 std::queue<std::unique_ptr<ReportEvent>> report_queue_;
101 Json::Value report_array{Json::arrayValue};
102 bool shutdown_{
false};
105 #endif // REPORTQUEUE_H_