18 #include "file-transfer-settings.gen.inc"
27 std::string effectiveUri;
31 std::optional<std::string> immutableUrl;
44 upload(
const std::string & uri, std::string data,
const Headers & headers = {}) = 0;
56 virtual bool exists(
const std::string & uri,
const Headers & headers = {}) = 0;
65 virtual std::pair<FileTransferResult, box_ptr<Source>>
66 download(
const std::string & uri,
const Headers & headers = {}) = 0;
68 enum Error { NotFound, Forbidden, Misc, Transient, Interrupted };
84ref<FileTransfer> makeFileTransfer(std::optional<unsigned int> baseRetryTimeMs = {});
86class FileTransferError :
public Error
89 FileTransfer::Error error;
93 template<
typename...
Args>
94 FileTransferError(FileTransfer::Error error, std::optional<std::string>
response,
const Args & ... args);
std::optional< std::string > response
intentionally optional
Definition filetransfer.hh:91
Definition store-api.hh:195
Definition filetransfer.hh:24
Definition filetransfer.hh:17
Definition filetransfer.hh:37
virtual void upload(const std::string &uri, std::string data, const Headers &headers={})=0
virtual std::pair< FileTransferResult, box_ptr< Source > > download(const std::string &uri, const Headers &headers={})=0
virtual bool exists(const std::string &uri, const Headers &headers={})=0