16 #ifndef ACSDKASSETMANAGERCLIENT_GENERICINVENTORY_H_ 17 #define ACSDKASSETMANAGERCLIENT_GENERICINVENTORY_H_ 20 #include <unordered_map> 21 #include <unordered_set> 27 namespace acsdkAssets {
40 :
public std::enable_shared_from_this<GenericInventory>
98 std::shared_ptr<clientInterfaces::ArtifactWrapperFactoryInterface> artifactWrapperFactory);
123 const std::shared_ptr<commonInterfaces::ArtifactRequest>& request,
125 return m_activeArtifact !=
nullptr && m_activeArtifact->getRequest() == request &&
applyChangesLocked(newPath);
130 const std::shared_ptr<clientInterfaces::ArtifactWrapperFactoryInterface> m_artifactWrapperFactory;
132 std::shared_ptr<clientInterfaces::ArtifactWrapperInterface> m_activeArtifact;
133 std::shared_ptr<clientInterfaces::ArtifactWrapperInterface> m_pendingArtifact;
135 std::mutex m_eventMutex;
142 #endif // ACSDKASSETMANAGERCLIENT_GENERICINVENTORY_H_ Definition: ArtifactUpdateValidator.h:28
virtual std::shared_ptr< commonInterfaces::ArtifactRequest > createRequest(const SettingsMap &settings)=0
::std::string string
Definition: gtest-port.h:1097
bool validateUpdate(const std::shared_ptr< commonInterfaces::ArtifactRequest > &request, const std::string &newPath) override
Definition: GenericInventory.h:122
std::unordered_map< std::string, Setting > SettingsMap
Definition: GenericInventory.h:31
const char * getName() const
Definition: GenericInventory.h:45
bool isSettingReady(const SettingsMap &setting)
std::set< std::string > Setting
Definition: GenericInventory.h:30
std::string getArtifactPath()
void setCurrentActivePriority(commonInterfaces::Priority priority)
Definition: GenericInventory.h:39
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
GenericInventory(std::string name, std::shared_ptr< clientInterfaces::ArtifactWrapperFactoryInterface > artifactWrapperFactory)
void cancelChangeLocked()
std::shared_ptr< clientInterfaces::ArtifactWrapperInterface > prepareForSettingChange(const SettingsMap &newSettings)
~GenericInventory() override
virtual bool applyChangesLocked(const std::string &path)=0
Priority
Definition: Priority.h:27