Browse Source

Add DownloadRequest::destFileName

adaptive-webui-19844
jagannatharjun 3 years ago
parent
commit
8b5db328ec
  1. 12
      src/base/net/downloadhandlerimpl.cpp
  2. 11
      src/base/net/downloadmanager.cpp
  3. 7
      src/base/net/downloadmanager.h

12
src/base/net/downloadhandlerimpl.cpp

@ -42,6 +42,16 @@ namespace @@ -42,6 +42,16 @@ namespace
{
bool saveToFile(const QByteArray &replyData, QString &filePath)
{
if (!filePath.isEmpty())
{
QFile file {filePath};
if (!file.open(QIODevice::WriteOnly))
return false;
file.write(replyData);
return true;
}
QTemporaryFile tmpfile {Utils::Fs::tempPath() + "XXXXXX"};
tmpfile.setAutoRemove(false);
@ -129,7 +139,7 @@ void DownloadHandlerImpl::processFinishedDownload() @@ -129,7 +139,7 @@ void DownloadHandlerImpl::processFinishedDownload()
if (m_downloadRequest.saveToFile())
{
QString filePath;
QString filePath {m_downloadRequest.destFileName()};
if (saveToFile(m_result.data, filePath))
m_result.filePath = filePath;
else

11
src/base/net/downloadmanager.cpp

@ -348,6 +348,17 @@ Net::DownloadRequest &Net::DownloadRequest::saveToFile(const bool value) @@ -348,6 +348,17 @@ Net::DownloadRequest &Net::DownloadRequest::saveToFile(const bool value)
return *this;
}
QString Net::DownloadRequest::destFileName() const
{
return m_destFileName;
}
Net::DownloadRequest &Net::DownloadRequest::destFileName(const QString &value)
{
m_destFileName = value;
return *this;
}
Net::ServiceID Net::ServiceID::fromURL(const QUrl &url)
{
return {url.host(), url.port(80)};

7
src/base/net/downloadmanager.h

@ -78,11 +78,18 @@ namespace Net @@ -78,11 +78,18 @@ namespace Net
bool saveToFile() const;
DownloadRequest &saveToFile(bool value);
// if saveToFile is set, the file is saved in destFileName
// (deprecated) if destFileName is not provided, the file will be saved
// in a temporary file, the name of file is set in DownloadResult::filePath
QString destFileName() const;
DownloadRequest &destFileName(const QString &value);
private:
QString m_url;
QString m_userAgent;
qint64 m_limit = 0;
bool m_saveToFile = false;
QString m_destFileName;
};
struct DownloadResult

Loading…
Cancel
Save