Classes | |
struct | State |
struct | TransferItem |
Public Member Functions | |
void | stopWorkerThread () |
void | workerThreadMain () |
void | workerThreadEntry () |
void | enqueueItem (std::shared_ptr< TransferItem > item) |
void | enqueueFileTransfer (const FileTransferRequest &request, Callback< FileTransferResult > callback) override |
![]() | |
std::future< FileTransferResult > | enqueueFileTransfer (const FileTransferRequest &request) |
FileTransferResult | download (const FileTransferRequest &request) |
FileTransferResult | upload (const FileTransferRequest &request) |
void | download (FileTransferRequest &&request, Sink &sink, std::function< void(FileTransferResult)> resultCallback={}) |
Public Attributes | |
CURLM * | curlm = 0 |
std::random_device | rd |
std::mt19937 | mt19937 |
Sync< State > | state_ |
Pipe | wakeupPipe |
std::thread | workerThread |
Additional Inherited Members | |
![]() | |
enum | Error { NotFound , Forbidden , Misc , Transient , Interrupted } |
|
inlineoverridevirtual |
Enqueue a data transfer request, returning a future to the result of the download. The future may throw a FileTransferError exception.
Implements nix::FileTransfer.