Audacity 3.2.0
Classes | Public Member Functions | Private Attributes | List of all members
audacity::network_manager::MultipartData Class Referencefinal

#include <MultipartData.h>

Collaboration diagram for audacity::network_manager::MultipartData:
[legend]

Classes

class  Part
 

Public Member Functions

 MultipartData ()=default
 
 MultipartData (const MultipartData &)=delete
 
MultipartDataoperator= (const MultipartData &)=delete
 
void Add (std::string_view name, std::string_view value)
 
void Add (std::string_view name, std::string_view contentType, const void *value, size_t size)
 
void AddFile (std::string_view name, std::string_view contentType, const wxFileName &fileName)
 
size_t GetPartsCount () const
 
PartGetPart (size_t idx)
 
const PartGetPart (size_t idx) const
 
bool IsEmpty () const
 

Private Attributes

std::vector< std::unique_ptr< Part > > mParts
 

Detailed Description

Definition at line 26 of file MultipartData.h.

Constructor & Destructor Documentation

◆ MultipartData() [1/2]

audacity::network_manager::MultipartData::MultipartData ( )
default

◆ MultipartData() [2/2]

audacity::network_manager::MultipartData::MultipartData ( const MultipartData )
delete

Member Function Documentation

◆ Add() [1/2]

void audacity::network_manager::MultipartData::Add ( std::string_view  name,
std::string_view  contentType,
const void *  value,
size_t  size 
)

Definition at line 185 of file MultipartData.cpp.

188{
189 mParts.emplace_back(std::make_unique<ByteBufferPart>(value, size));
190
191 mParts.back()->SetContentDisposition("form-data; name=\"" + std::string(name) + "\"");
192
193 if (!contentType.empty())
194 mParts.back()->SetContentType(std::string(contentType));
195}
const TranslatableString name
Definition: Distortion.cpp:76
std::vector< std::unique_ptr< Part > > mParts
Definition: MultipartData.h:68

References mParts, name, and size.

◆ Add() [2/2]

void audacity::network_manager::MultipartData::Add ( std::string_view  name,
std::string_view  value 
)

Definition at line 180 of file MultipartData.cpp.

181{
182 Add(name, {}, value.data(), value.length());
183}
void Add(std::string_view name, std::string_view value)

References Add(), and name.

Referenced by Add().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddFile()

void audacity::network_manager::MultipartData::AddFile ( std::string_view  name,
std::string_view  contentType,
const wxFileName &  fileName 
)

Definition at line 197 of file MultipartData.cpp.

200{
201 mParts.emplace_back(std::make_unique<FilePart>(fileName));
202
203 mParts.back()->SetContentDisposition(
204 "form-data; name=\"" + std::string(name) + "\"; filename=\"" +
205 fileName.GetFullName().ToUTF8().data() + "\"");
206
207 if (!contentType.empty())
208 mParts.back()->SetContentType(std::string(contentType));
209}

References mParts, and name.

◆ GetPart() [1/2]

MultipartData::Part * audacity::network_manager::MultipartData::GetPart ( size_t  idx)

Definition at line 216 of file MultipartData.cpp.

217{
218 if (idx < mParts.size())
219 return mParts[idx].get();
220
221 return nullptr;
222}

References mParts.

◆ GetPart() [2/2]

const MultipartData::Part * audacity::network_manager::MultipartData::GetPart ( size_t  idx) const

Definition at line 224 of file MultipartData.cpp.

225{
226 if (idx < mParts.size())
227 return mParts[idx].get();
228
229 return nullptr;
230}

References mParts.

◆ GetPartsCount()

size_t audacity::network_manager::MultipartData::GetPartsCount ( ) const

Definition at line 211 of file MultipartData.cpp.

212{
213 return mParts.size();
214}

References mParts.

◆ IsEmpty()

bool audacity::network_manager::MultipartData::IsEmpty ( ) const

Definition at line 232 of file MultipartData.cpp.

233{
234 return mParts.empty();
235}

References mParts.

◆ operator=()

MultipartData & audacity::network_manager::MultipartData::operator= ( const MultipartData )
delete

Member Data Documentation

◆ mParts

std::vector<std::unique_ptr<Part> > audacity::network_manager::MultipartData::mParts
private

Definition at line 68 of file MultipartData.h.

Referenced by Add(), AddFile(), GetPart(), GetPartsCount(), and IsEmpty().


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