AlexaClientSDK  1.26.0
A cross-platform, modular SDK for interacting with the Alexa Voice Service
Classes | Public Member Functions | List of all members
alexaClientSDK::acsdkAssets::manager::UrlRequester Class Reference

#include <UrlRequester.h>

Inheritance diagram for alexaClientSDK::acsdkAssets::manager::UrlRequester:
Inheritance graph
[legend]
Collaboration diagram for alexaClientSDK::acsdkAssets::manager::UrlRequester:
Collaboration graph
[legend]

Classes

class  CurlProgressCallback
 

Public Member Functions

 ~UrlRequester () override
 
Requester Functions
bool download () override
 
- Public Member Functions inherited from alexaClientSDK::acsdkAssets::manager::Requester
virtual ~Requester ()
 
size_t deleteAndCleanup ()
 
void handleUpdate (bool accept)
 
std::string name () const
 
const std::shared_ptr< commonInterfaces::ArtifactRequest > & getArtifactRequest () const
 
commonInterfaces::State getState () const
 
std::chrono::milliseconds getLastUsed () const
 
commonInterfaces::Priority getPriority () const
 
bool isDownloaded ()
 
std::string getArtifactPath ()
 
virtual void setPriority (commonInterfaces::Priority newPriority)
 
bool validateWriteRequest (const std::string &name, int newValue) override
 Override of the CommunicationPropertyValidatorInterface. More...
 
std::string functionToBeInvoked (const std::string &Name) override
 Override of the InvokeFunctionInterface. More...
 
- Public Member Functions inherited from alexaClientSDK::acsdkCommunicationInterfaces::CommunicationPropertyValidatorInterface< int >
virtual ~CommunicationPropertyValidatorInterface ()=default
 
- Public Member Functions inherited from alexaClientSDK::acsdkCommunicationInterfaces::FunctionInvokerInterface< std::string >
virtual ~FunctionInvokerInterface ()=default
 
virtual std::string functionToBeInvoked (const std::string &name, Types... args)=0
 

Additional Inherited Members

- Static Public Attributes inherited from alexaClientSDK::acsdkAssets::manager::Requester
static std::chrono::milliseconds START_TIME_OFFSET = milliseconds(0)
 
- Protected Member Functions inherited from alexaClientSDK::acsdkAssets::manager::Requester
 Requester (std::shared_ptr< StorageManager > storageManager, std::shared_ptr< commonInterfaces::AmdCommunicationInterface > communicationHandler, std::shared_ptr< RequesterMetadata > metadata, std::string metadataFilePath)
 
bool initializeFromStorage ()
 
bool registerCommunicationHandlerPropsLocked ()
 
void deregisterCommunicationHandlerPropsLocked (std::unique_lock< std::mutex > &lock)
 
void setStateLocked (commonInterfaces::State newState)
 
void updateLastUsedTimestampLocked ()
 
void notifyUpdateIsAvailableLocked (std::unique_lock< std::mutex > &lock)
 
bool handleAcquiredResourceLocked (std::unique_lock< std::mutex > &lock, const std::shared_ptr< Resource > &newResource)
 
void handleDownloadFailureLocked (std::unique_lock< std::mutex > &lock)
 
void handleUpdateLocked (std::unique_lock< std::mutex > &lock, bool accept)
 
- Protected Attributes inherited from alexaClientSDK::acsdkAssets::manager::Requester
const std::shared_ptr< StorageManagerm_storageManager
 
const std::shared_ptr< commonInterfaces::AmdCommunicationInterfacem_communicationHandler
 
const std::shared_ptr< RequesterMetadatam_metadata
 
const std::string m_metadataFilePath
 
std::unique_ptr< StorageManager::ReservationTokenm_storageReservationToken
 
std::shared_ptr< Resourcem_resource
 
std::shared_ptr< Resourcem_pendingUpdate
 
int m_updateNotificationsSent
 
alexaClientSDK::avsCommon::utils::timing::Timer m_timer
 
std::mutex m_eventMutex
 
bool m_communicationHandlerRegistered
 
friend RequesterFactory
 
std::shared_ptr< acsdkCommunicationInterfaces::CommunicationProperty< int > > m_stateProperty
 
std::shared_ptr< acsdkCommunicationInterfaces::CommunicationProperty< int > > m_priorityProperty
 
std::shared_ptr< acsdkCommunicationInterfaces::CommunicationProperty< std::string > > m_updateProperty
 

Detailed Description

This class implements the Requester class and extends it to allow for the handling of artifacts downloaded directly from urls

Constructor & Destructor Documentation

◆ ~UrlRequester()

alexaClientSDK::acsdkAssets::manager::UrlRequester::~UrlRequester ( )
override

Member Function Documentation

◆ download()

bool alexaClientSDK::acsdkAssets::manager::UrlRequester::download ( )
overridevirtual

Issues a download request if not already in progress.

Returns
true if the artifact is already downloaded or can download.

Implements alexaClientSDK::acsdkAssets::manager::Requester.


The documentation for this class was generated from the following files:

AlexaClientSDK 1.26.0 - Copyright 2016-2022 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0