18#include <wx/filename.h>
24namespace network_manager
37 void SetHeader(
const std::string& headerName,
const std::string& headerValue);
39 void SetContentType(
const std::string& mimeType);
40 void SetContentDisposition(
const std::string& disposition);
45 virtual size_t Read(
void* buffer,
size_t maxBytes) = 0;
46 virtual bool Seek(int64_t offset,
int origin = SEEK_SET) = 0;
53 void Add(std::string_view
name, std::string_view value);
55 std::string_view
name, std::string_view contentType,
const void* value,
58 void AddFile(std::string_view
name, std::string_view contentType,
const wxFileName& fileName);
60 size_t GetPartsCount()
const;
62 Part* GetPart(
size_t idx);
63 const Part* GetPart(
size_t idx)
const;
68 std::vector<std::unique_ptr<Part>>
mParts;
#define NETWORK_MANAGER_API
virtual bool Seek(int64_t offset, int origin=SEEK_SET)=0
virtual size_t Read(void *buffer, size_t maxBytes)=0
virtual int64_t GetSize() const =0
virtual size_t GetOffset() const =0
std::vector< std::unique_ptr< Part > > mParts
MultipartData(const MultipartData &)=delete
PROJECT_FILE_IO_API void Add(const FilePath &path)