void DownloadQueueSet::retryOrBlacklistJob( HttpJob * job, const int errorCode ) { Q_ASSERT( errorCode != 0 ); Q_ASSERT( !m_retryQueue.contains( job )); deactivateJob( job ); emit jobRemoved(); if ( job->tryAgain() ) { mDebug() << QString( "Download of %1 to %2 failed, but trying again soon" ) .arg( job->sourceUrl().toString() ).arg( job->destinationFileName() ); m_retryQueue.enqueue( job ); emit jobRetry(); } else { mDebug() << "JOB-address: " << job << "Blacklist-size:" << m_jobBlackList.size() << "err:" << errorCode; m_jobBlackList.insert( job->sourceUrl().toString() ); mDebug() << QString( "Download of %1 Blacklisted. " "Number of blacklist items: %2" ) .arg( job->destinationFileName() ) .arg( m_jobBlackList.size() ); job->deleteLater(); } activateJobs(); }
void JobManager::cleanup() { Q_ASSERT(!m_finishedJobs.isEmpty()); Job *const job = m_jobs.take(m_finishedJobs.dequeue()); emit jobRemoved(job); delete job; }
void DownloadQueueSet::redirectJob( HttpJob * job, const QUrl& newSourceUrl ) { mDebug() << "jobRedirected:" << job->sourceUrl() << " -> " << newSourceUrl; deactivateJob( job ); emit jobRemoved(); emit jobRedirected( newSourceUrl, job->destinationFileName(), job->initiatorId(), job->downloadUsage() ); job->deleteLater(); }
void DownloadQueueSet::finishJob( HttpJob * job, const QByteArray& data ) { mDebug() << "finishJob: " << job->sourceUrl() << job->destinationFileName(); deactivateJob( job ); emit jobRemoved(); emit jobFinished( data, job->destinationFileName(), job->initiatorId() ); job->deleteLater(); activateJobs(); }
void ProgressFloatItem::initialize() { const HttpDownloadManager* manager = marbleModel()->downloadManager(); Q_ASSERT( manager ); connect( manager, SIGNAL(progressChanged(int,int)), this, SLOT(handleProgress(int,int)) , Qt::UniqueConnection ); connect( manager, SIGNAL(jobRemoved()), this, SLOT(removeProgressItem()), Qt::UniqueConnection ); // Calculate font size QFont myFont = font(); const QString text = "100%"; int fontSize = myFont.pointSize(); while( QFontMetrics( myFont ).boundingRect( text ).width() < contentRect().width() - 2 ) { ++fontSize; myFont.setPointSize( fontSize ); } m_fontSize = fontSize - 1; m_isInitialized = true; }
void Conveyor::emitJobRemoved (Job * const j) { emit jobRemoved(j); }