void CDownloads::start() { QMutexLocker l(&m_pSection); QDir d(quazaaSettings.Downloads.IncompletePath); if( !d.exists() ) d.mkpath(quazaaSettings.Downloads.IncompletePath); if( d.isReadable() ) { QStringList files = d.entryList(QStringList() << "*.!qd"); foreach(QString f, files) { QFile file(quazaaSettings.Downloads.IncompletePath + "/" + f); if( file.exists() && file.open(QFile::ReadOnly) ) { CDownload* pDownload = new CDownload(); QDataStream stream(&file); stream >> *pDownload; pDownload->moveToThread(&TransfersThread); m_lDownloads.append(pDownload); emit downloadAdded(pDownload); systemLog.postLog( LogSeverity::Notice, Components::Downloads, qPrintable( tr( "Loaded download: %s" ) ), qPrintable( pDownload->m_sDisplayName ) ); }
void CDownloads::add(CQueryHit *pHit) { ASSUME_LOCK(Downloads.m_pSection); CDownload* pDownload = new CDownload(pHit); pDownload->moveToThread(&TransfersThread); m_lDownloads.append(pDownload); pDownload->saveState(); systemLog.postLog(LogSeverity::Notice, qPrintable(tr("Queued download job for %s")), qPrintable(pDownload->m_sDisplayName)); emit downloadAdded(pDownload); }
void Utils::downloadFile(const QString &folder, const QString &filename, const QString &url, int size, const QString &auth) { RequestData data; data.isDownload = true; data.folder = folder; data.filename = filename; data.url = url; data.auth = auth; data.size = size; quee.append(data); emit downloadAdded(filename); if(isFinished){ start(); } }