Aktualizr
C++ SOTA Client
All Classes Namespaces Files Functions Variables Enumerations Enumerator Pages
packagemanagerfake.h
1 #ifndef PACKAGEMANAGERFAKE_H_
2 #define PACKAGEMANAGERFAKE_H_
3 
4 #include <memory>
5 #include <string>
6 
7 #include "libaktualizr/packagemanagerinterface.h"
8 
9 #include "bootloader/bootloader.h"
10 
12  public:
13  PackageManagerFake(const PackageConfig &pconfig, const BootloaderConfig &bconfig,
14  const std::shared_ptr<INvStorage> &storage, const std::shared_ptr<HttpInterface> &http)
15  : PackageManagerInterface(pconfig, bconfig, storage, http), bootloader_{new Bootloader(bconfig, *storage_)} {}
16  ~PackageManagerFake() override = default;
17  std::string name() const override { return "fake"; }
18  Json::Value getInstalledPackages() const override;
19 
20  Uptane::Target getCurrent() const override;
21 
22  data::InstallationResult install(const Uptane::Target &target) const override;
23  void completeInstall() const override;
24  data::InstallationResult finalizeInstall(const Uptane::Target &target) override;
25  void updateNotify() override { bootloader_->updateNotify(); };
26  bool fetchTarget(const Uptane::Target &target, Uptane::Fetcher &fetcher, const KeyManager &keys,
27  const FetcherProgressCb &progress_cb, const api::FlowControlToken *token) override;
28 
29  private:
30  std::unique_ptr<Bootloader> bootloader_;
31 };
32 
33 #endif // PACKAGEMANAGERFAKE_H_
Uptane::Fetcher
Definition: fetcher.h:33
PackageManagerInterface
Definition: packagemanagerinterface.h:42
KeyManager
Definition: keymanager.h:13
data::InstallationResult
Definition: types.h:277
Bootloader
Definition: bootloader.h:8
api::FlowControlToken
Provides a thread-safe way to pause and terminate task execution.
Definition: apiqueue.h:19
PackageManagerFake
Definition: packagemanagerfake.h:11
PackageConfig
Definition: config.h:91
Uptane::Target
Definition: types.h:379
BootloaderConfig
Definition: config.h:156