16 #ifndef ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_ATTACHMENT_ATTACHMENT_H_ 17 #define ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_ATTACHMENT_ATTACHMENT_H_ 32 namespace attachment {
105 #endif // ALEXA_CLIENT_SDK_AVSCOMMON_AVS_INCLUDE_AVSCOMMON_AVS_ATTACHMENT_ATTACHMENT_H_
Definition: Attachment.h:37
WriterPolicy
Specifies the policy to use for writing to the stream.
Definition: WriterPolicy.h:25
std::atomic< bool > m_hasCreatedWriter
An atomic tracking variable to tell whether this object has created a writer.
Definition: Attachment.h:95
::std::string string
Definition: gtest-port.h:1097
virtual ~Attachment()=default
virtual std::unique_ptr< AttachmentReader > createReader(utils::sds::ReaderPolicy policy)=0
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
ReaderPolicy
Specifies the policy to use for reading from the stream.
Definition: ReaderPolicy.h:25
const std::string m_id
The id for this attachment object.
Definition: Attachment.h:91
std::mutex m_mutex
mutex to protext access to the createReader and createWriter API.
Definition: Attachment.h:93
std::atomic< size_t > m_numReaders
An atomic tracking variable to tell how many readers have been created.
Definition: Attachment.h:97
Attachment(const std::string &attachmentId)
virtual std::unique_ptr< AttachmentWriter > createWriter(utils::sds::WriterPolicy policy=utils::sds::WriterPolicy::ALL_OR_NOTHING)=0
std::string getId() const