in sample/src/sharelink/ShareLinkSample.cc [95:125]
void ShareLinkSample::ResumableFileDownloadStopOnce(const std::string& fileID)
{
ResetProgressControlCallTimes();
FileDownloadRequest downloadRequest("", Config::ShareID, fileID, Config::FileDownloadTo, Config::CheckpointDir);
downloadRequest.setShareToken(Config::ShareToken);
TransferProgress progressCallback = { ProgressCallback , this };
downloadRequest.setTransferProgress(progressCallback);
ProgressControl progressControlStopCallback = { ProgressControlStopCallback , this };
downloadRequest.setProgressControl(progressControlStopCallback);
auto getOutcome = client->ResumableFileDownload(downloadRequest);
if (!getOutcome.isSuccess()) {
PrintError(__FUNCTION__, getOutcome.error());
}
else {
std::cout << __FUNCTION__ << " first time call ResumableFileDownload success" << std::endl;
return;
}
ProgressControl progressControlCallback = { ProgressControlCallback , this };
downloadRequest.setProgressControl(progressControlCallback);
getOutcome = client->ResumableFileDownload(downloadRequest);
if (!getOutcome.isSuccess()) {
PrintError(__FUNCTION__, getOutcome.error());
}
else {
std::cout << __FUNCTION__ << "second time call ResumableFileDownload success" << std::endl;
}
}