1 #ifndef UPTANE_SECONDARYINTERFACE_H 2 #define UPTANE_SECONDARYINTERFACE_H 9 #include "uptane/secondaryconfig.h" 10 #include "uptane/tuf.h" 26 virtual void Initialize(){};
31 virtual Json::Value getManifest() = 0;
32 virtual bool putMetadata(
const RawMetaPack& meta_pack) = 0;
33 virtual int32_t getRootVersion(
bool director) = 0;
34 virtual bool putRoot(
const std::string& root,
bool director) = 0;
36 virtual bool sendFirmware(
const std::shared_ptr<std::string>&
data) = 0;
38 void addEventsChannel(std::shared_ptr<event::Channel> channel) { events_channel = std::move(channel); }
41 template <
class T,
class... Args>
42 void sendEvent(Args&&... args) {
43 std::shared_ptr<event::BaseEvent>
event = std::make_shared<T>(std::forward<Args>(args)...);
45 (*events_channel)(std::move(
event));
46 }
else if (
event->variant !=
"DownloadProgressReport") {
47 LOG_INFO <<
"got " <<
event->variant <<
" event";
52 std::shared_ptr<event::Channel> events_channel;
56 #endif // UPTANE_SECONDARYINTERFACE_H
Base data types that are used in The Update Framework (TUF), part of UPTANE.